溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Python中的if語句,while循環(huán)與for循環(huán)基礎(chǔ)教學(xué)

發(fā)布時(shí)間:2020-07-29 23:05:32 來源:網(wǎng)絡(luò) 閱讀:442 作者:nineteens 欄目:編程語言

  if語句:

  語法:

  單分支

  if 判斷條件:

  語句塊

  執(zhí)行過程:首先執(zhí)行判斷條件,當(dāng)條件成立則執(zhí)行判斷條件下面的語句塊,

  若條件不成立,則不執(zhí)行

  雙分支

  if 判斷條件:

  語句塊1

  else:

  語句塊2

  執(zhí)行過程: 首先執(zhí)行判斷條件,若條件成立則執(zhí)行語句塊1,若條件不成立,則執(zhí)行

  語句2.

  多分支

  if 判斷條件1:

  語句塊1

  elif 判斷條件2:

  語句塊2

  elif 判斷條件n:

  語句塊n

  else:

  語句塊

  執(zhí)行過程:

  首先執(zhí)行判斷條件1,若成立則執(zhí)行語句塊1,若不成立,則執(zhí)行判斷語句2,若條件成立,

  則執(zhí)行語句塊2,若不成立,依次類推,若所有的判斷條件都不成立,則執(zhí)行else下面的語句塊。

  if語句的嵌套

  語法:

  if 判斷條件1:

  if 判斷條件2:

  語句塊2-1

  else:

  語句塊2-2

  else:

  語句塊1-2

  注意:使用嵌套的時(shí)候我們通過它的縮進(jìn)來進(jìn)行匹配我們的語句的。

  輸入年齡:

  輸入的年齡[0,160],若年齡不在這個(gè)范圍內(nèi),則打印年齡非法

  小于16歲 少年

  16~24歲 青少年

  25~34歲 青年

  35~44歲 中年

  45~59歲 中老年

  60年 老年

  輸入年齡,小于18未成年人禁止進(jìn)入,否則打印歡迎光臨。。。

  age = int(input("請輸入您的年齡:"))

  if age < 18:

  print("未成年人禁止進(jìn)入。。。")

  else:

  print("歡迎光臨。。。")

  if age>=0 and age<=160:

  if age < 16:

  print("少年")

  elif age < 25:

  print("青少年")

  elif age < 35:

  print("青年")

  elif age < 45:

  print("中年")

  elif age < 60:

  print("中老年")

  else:

  print("老年")

  else:

  print("年齡非法")

  我們可以將我們的if語句強(qiáng)制性寫在一行,成了偽三目運(yùn)算。

  result1 if 判斷條件 else result2

  執(zhí)行過程:

  先執(zhí)行判斷條件,當(dāng)判斷條件成立則返回result1,若條件不成立,則返回result2.

  三目運(yùn)算:完成一個(gè)二選一的結(jié)果。

  num1 = int(input(“請輸入第一個(gè)數(shù)據(jù):”))

  num2 = int(input(“請輸入第二個(gè)數(shù)據(jù):”))

  print(num1 if num1>num2 else num2)

  循環(huán)之while:

  while循環(huán)的基本語法:

  while 判斷條件:

  循環(huán)體

  執(zhí)行過程:先執(zhí)行判斷條件,條件成立,則進(jìn)入循環(huán)體,執(zhí)行一遍循環(huán)體中的代碼,

  循環(huán)體執(zhí)行結(jié)束,繼續(xù)進(jìn)行判斷,若條件成立,繼續(xù)執(zhí)行循環(huán)體,循環(huán)往復(fù),直到

  條件不成立的時(shí)候,退出循環(huán)

  循環(huán)嵌套:

  while 判斷條件1:

  while 判斷條件2:

  循環(huán)體2

  循環(huán)體1

  執(zhí)行過程:先執(zhí)行判斷條件1,若條件1成立,則進(jìn)入循環(huán)體,執(zhí)行判斷條件2,若條件2成立,

  則執(zhí)行循環(huán)體2,繼續(xù)執(zhí)行判斷條件2,直到條件2不成立為止,退出內(nèi)循環(huán),執(zhí)行循環(huán)體1中

  的內(nèi)容,執(zhí)行判斷條件1,條件成立,執(zhí)行判斷條件2…直到條件1不成立則退出循環(huán)。

  外循環(huán)執(zhí)行一次,內(nèi)循環(huán)執(zhí)行結(jié)束之后,再執(zhí)行第二次外循環(huán)…

  計(jì)算 1+2+3+…+100 的和

  res = 0 #統(tǒng)計(jì)大小

  n = 1 #初始值

  while n<=100:

  res += n # 將n的值加到res身上

  n += 1 #對n進(jìn)行加1處理

  print("res=",res)

  1x2x3x...x100的積

  ji = 1

  n = 1

  while n<=100:

  ji *= n

  n += 1

  print("ji=",ji)

  求n!

  n = 1x2x3..xn

  要求n從控制臺(tái)輸入

  n = int(input("請輸入一個(gè)正整數(shù):"))

  ji = 1

  i = 1

  while i<= n:

  ji *= i

  i += 1

  print("%d的階乘為%d"%(n,ji))

  求階乘之和

  res = 1! + 2! + 3! +...+n!

  n = int(input("請輸入一個(gè)正整數(shù):"))

  res = 0

  j = 1

  while j <= n:

  #求階乘

  ji = 1

  i = 1

  while i <= j:

  ji *= i

  i += 1

  res += ji

  j += 1

  print("res=",res)

  n = int(input("請輸入一個(gè)正整數(shù):"))

  ji = 1

  i = 1

  res = 0

  while i<= n: # i=1 i=2

  ji *= i #ji = 1x1 ji=1!x2=2!

  i += 1

  res += ji #res = 1! res = 1!+2!

  print("res=",res)

  打印星星號

  控制臺(tái)輸入1

  1 1

  控制臺(tái)輸入2

  1 1

  ** 2 2

  輸入3

  1 1

  ** 2 2

  *** 3 3

  輸入4

  *

  **

  輸入5

  *

  **

  n = int(input("請輸入一個(gè)正整數(shù):"))

  i = 1

  while i<=n: #打印的行數(shù)

  j = 1

  while j <= i: #打印星星號的個(gè)數(shù)

  print("*",end="")

  j += 1

  print()

  i += 1

  while i<=n:

  print("*"*i)

  i += 1

  while循環(huán)之死循環(huán):

  輸入用戶名以及密碼,判斷用戶名與密碼是否正確,

  若不正確則一直輸入,直到輸入正確為止

  用戶名:admin

  密碼:123456

  while True:

  name = input(“請輸入您的用戶名:”)

  psd = input(“請輸入您的密碼:”)

  if name == “admin” and psd == “123456”:

  print(“正確”)

  break

  else:

  print(“請重新輸入。。。”)

  continue

  break contine和pass的使用:

  break: 跳出循環(huán)體【跳出它所在循環(huán)的循環(huán)體】

  continue:結(jié)束當(dāng)前此次循環(huán)[continue下面的語句不會(huì)再執(zhí)行],繼續(xù)下一次 【不跳出循環(huán)體】

  pass:保證語義的完整,本身沒有任何意義

  注意:break與continue只能用于循環(huán)中。

  需求變更:

  每次游戲開獎(jiǎng)之后,提示要不要繼續(xù),若顯示yes繼續(xù),若輸入no則退出游戲。

  import random

  while 1:

  jiang = random.randrange(1,7)

  print(jiang)

  ya = input("押大還是押小?大/小")

  if ya == "大" and jiang>3 or ya == "小" and jiang<4:

  print("莊家喝酒。。。")

  else:

  print("先干為敬。。。")

  ji = input("是否繼續(xù)游戲?yes/no")

  if ji == "yes":

  continue #結(jié)束當(dāng)前這次循環(huán),繼續(xù)下一次

  else:

  break #跳出循環(huán)

  while循環(huán)之else:

  while 判斷條件:

  循環(huán)體

  else:

  語句塊

  當(dāng)我們的循環(huán)正常執(zhí)行結(jié)束的時(shí)候,它才會(huì)執(zhí)行我們的else語句下面的語句塊,

  若循環(huán)體中的代碼是非正常執(zhí)行結(jié)束,這時(shí)候它不會(huì)執(zhí)行else下面的語句塊。

  【當(dāng)使用break跳出循環(huán)的時(shí)候,就是非正常執(zhí)行結(jié)束的狀態(tài)】

  若while循環(huán)只有一條語句的時(shí)候,我們可以將while循環(huán)與下面的語句強(qiáng)制性寫在一行

  while True: pass

  1+2+..+100

  n = 1

  res = 0

  while n<=100:

  res += n

  n += 1

  print(n)

  if n>50:

  continue

  else:

  print("循環(huán)結(jié)束")

  print(res)

  for循環(huán):無錫哪家醫(yī)院婦科好 https://www.bhnfk.com/

  for循環(huán)的語法:

  for 變量 in 序列:

  循環(huán)體

  依次將序列中元素取出并且賦值給變量,直到序列元素中的元素全部取出為止,循環(huán)結(jié)束。

  range([start,]stop[,step])

  start:指定開始,默認(rèn)0

  stop:取值的結(jié)束 必須寫

  step:步長 默認(rèn)1

  功能:可以產(chǎn)生一個(gè)[start,stop)的序列

  list1 = ["hello","hahha","hehe","heihei"]

  for x in list1: #用for循環(huán)遍歷列表

  print(x)

  1+2+3...+10 #計(jì)算1+....+10的和

  list2 = [1,2,3,4,5,6,7,8,9,10]

  res = 0

  for i in list2:

  res += i

  print(res)

  print(list(range(1,101))) #1到100的列表

  res2 = 0

  for j in range(100,0,-1): #1+....+100的和

  print("j=",j)

  res2 += j

  print(res2)

  使用for循環(huán)求n的階乘

  n = int(input("請輸入一個(gè)正整數(shù):"))

  ji = 1

  for x in range(1,n+1):

  ji *= x

  print("%d的階乘為%d"%(n,ji))

  循環(huán)的嵌套:

  for i in 序列1:

  循環(huán)體1

  for j in 序列2:

  循環(huán)體2

  執(zhí)行過程:

  首先進(jìn)入外循環(huán),外循環(huán)執(zhí)行一次,進(jìn)入內(nèi)循環(huán),

  內(nèi)循環(huán)【執(zhí)行一輪】執(zhí)行結(jié)束,退出內(nèi)循環(huán),執(zhí)行第二次外循環(huán),

  又重新進(jìn)入內(nèi)循環(huán),循環(huán)往復(fù),直到外循環(huán)退出,整個(gè)循環(huán)才結(jié)束

  求階乘之和

  方法一:

  res = 1!+2!+3!+...+n!

  n = int(input("請輸入一個(gè)正整數(shù):"))

  res = 0

  for i in range(1,n+1):

  ji = 1

  for x in range(1, i + 1):

  ji *= x

  res += ji

  print("res =",res)

  方法二:

  n = int(input("請輸入一個(gè)正整數(shù):"))

  res = 0

  ji = 1

  for x in range(1,n+1):

  ji *= x #x = 1 ji = 1! x=2 ji=1x2=2!

  res += ji #1!+2!+...

  print("res =",res)

  for循環(huán)之else:

  for 變量 in 序列:

  循環(huán)體

  else:

  語句塊

  執(zhí)行過程:執(zhí)行循環(huán),若循環(huán)正常執(zhí)行結(jié)束,則執(zhí)行else下面的語句塊,若是非正常執(zhí)行結(jié)束

  else下面的語句塊則不再執(zhí)行。

  for x in range(10):

  if x>50:

  break

  else:

  print("循環(huán)結(jié)束")

  使用for循環(huán)打印九九乘法表

  兩個(gè)循環(huán):

  1.外循環(huán)控制行

  2.內(nèi)循環(huán)控制列

  for i in range(1,10):

  for j in range(1,i+1):

  print("%dx%d=%d"%(j,i,j*i),end="\t")

  print()

  基本數(shù)據(jù)類型能作用于for循環(huán)的有

  字符串,列表,元組,字典,集合,range()


向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI