目錄
條件判斷 if
循環?
for ... in ...
while
break
continue
繼 "Python 學習之路二":
條件判斷 if
比如,輸入用戶年齡,根據年齡打印不同的內容,在 Python 程序中,用 if 語句實現:
>>> age = 18
>>> if age >= 18 :
print("your age is ",age)
print("adult")
your age is 18
adult
>>>
根據 Python 的縮進規則,如果 if 語句判斷是 True,就把縮進的兩行 print 語句執行了,否則,什么也不做。也可以給 if 添加一個 else 語句,意思是,如果 if 判斷是 False,不要執行 if 的內容,去把 else 執行了:
>>> age = 9
>>> if age >= 18:
print("your age is",age)
print("adult")
else:
print('your age is',age)
print("teenager")
your age is 9
teenager
>>>
(注意不要少寫了冒號 : )
當然上面的判斷是很粗略的,完全可以用 elif 做更細致的判斷:
>>> age = 3
>>> if age >= 18:
print("adult")
elif age >= 6:
print("teenager")
else:
print("kid")
kid
>>>
elif 是 else if 的縮寫,完全可以有多個 elif,所以 if 語句的完整形式就是:
if <判斷條件1>:
執行語句1
elif <判斷條件2>:
執行語句2
elif <判斷條件3>:
執行語句3
else :
執行語句4
if 語句執行有個特點,它是從上往下判斷,如果在某個判斷上是 True,把該判斷對應的語句執行后,就忽略掉剩下的 elif 和 else,所以,請測試并解釋為什么下面的程序打印的是 teenager:
>>> age = 3
>>> if age >= 18:
print("adult")
elif age >= 6:
print("teenager")
else:
print("kid")
kid
if 判斷條件還可以簡寫,比如寫:
if x:
print("True")
只要 x 是非零數值、非空字符串、非空 list 等,就判斷為 True,否則為 False。補充:可以使用 input()進行數據的輸入.注意輸入的內容是 str,如果需要 int 需要進行類型轉換。
循環?
Python 的循環有兩種
for ... in ...
一種是 for...in 循環,依次把 list 或 tuple 中的每個元素迭代出來:
>>> names = ["Michael","Bob","Tracy"]
>>> for name in names :
print(name)
Michael
Bob
Tracy
所以 for x in ...循環就是把每個元素代入變量 x,然后執行縮進塊的語句.如我們想計算 1-10 的整數之和,可以用一個 sum 變量做累加:
>>> sum = 0
>>> for x in [1,2,3,4,5,6,7,8,9,10]:
sum = sum + x
print(sum)
1
3
6
10
15
21
28
36
45
55
>>>
如果要計算 1-100 的整數之和,從 1 寫到 100 有點困難,幸好 Python 提供一個 range()函數,可以生成一個整數序列,再通過 list()函數可以轉換為 list。比如 range(5)生成的序列是從 0 開始小于 5 的整數:
>>> list(range(10))
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>>
while
第二種循環是 while 循環,只要條件滿足,就不斷循環,條件不滿足時退出循環。比如我們要計算 100 以內所有奇數之和,可以用 while 循環實現:
>>> sum = 0
>>> n = 99
>>> while n > 0 :
sum += n
n -= 2
print(sum)
break
在循環中,break 語句可以提前退出循環。例如,本來要循環打印 1~100 的數字:
>>> n = 1
>>> while n <= 20 :
if n > 10 :
break
print(n)
n = n + 1
print("END")
執行上面的代碼可以看到,打印出 1~10 后,緊接著打印 END,程序結束。可見 break 的作用是提前結束循環.
continue
在循環過程中,也可以通過 continue 語句,跳過當前的這次循環,直接開始下一次循環。
>>> n = 0
>>> while n < 10 :
n = n + 1
print(n)
1
2
3
4
5
6
7
8
9
10
>>>
上面的程序可以打印出 1~10。但是,如果我們想只打印奇數,可以用 continue 語句跳過某些循環:
>>> n = 0
>>> while n < 10 :
n = n + 1
if n % 2 == 0 :
continue
print(n)
1
3
5
7
9
>>>
?
?
?
?
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
