python 流程控制
if條件語句是通過一條或多條語句的執行結果(True或者False)來決定執行的代碼塊。
#!/usr/bin/env python # -*- coding: encoding -*- name = input('請輸入用戶名:') if name == "admin": print "超級管理員" elif name == "user": print "普通用戶" elif name == "guest": print "客人" else: print "不認識你"
每個條件后面要使用冒號(:),表示接下來是滿足條件后要執行的語句塊。
使用縮進來划分語句塊,相同縮進數的語句在一起組成一個語句塊。
在Python中沒有switch – case語句。
以下為if中常用的操作運算符:
操作符 | 描述 |
---|---|
< |
小於 |
<= |
小於或等於 |
> |
大於 |
>= |
大於或等於 |
== |
等於,比較對象是否相等 |
!= |
不等於 |
if 嵌套
在嵌套 if 語句中,可以把 if...elif...else 結構放在另外一個 if...elif...else 結構中。
if 表達式1: 語句 if 表達式2: 語句 elif 表達式3: 語句 else 語句 elif 表達式4: 語句 else: 語句
while 循環
while循環:只要符合條件(條件語句返回的是True)則循環執行某個代碼段
#!/usr/bin/python count = 0 while count < 5: print (count, " 小於 5") count = count + 1 else: print (count, " 大於或等於 5")
for 語句
or循環常常使用in對序列化對象(如列表、元祖等)進行遍歷
for循環的一般格式如下:
for i in range(5): print(i)
break和continue語句及循環中的else子句
break 語句可以跳出 for 和 while 的循環體。如果你從 for 或 while 循環中終止,任何對應的循環 else 塊將不執行
#!/usr/bin/python3 for letter in 'Runoob': # 第一個實例 if letter == 'b': break print ('當前字母為 :', letter) var = 10 # 第二個實例 while var > 0: print ('當期變量值為 :', var) var = var -1 if var == 5: break print ("Good bye!")
continue語句被用來告訴Python跳過當前循環塊中的剩余語句,然后繼續進行下一輪循環。
#!/usr/bin/python3 for letter in 'Runoob': # 第一個實例 if letter == 'o': # 字母為 o 時跳過輸出 continue print ('當前字母 :', letter) var = 10 # 第二個實例 while var > 0: var = var -1 if var == 5: # 變量為 5 時跳過輸出 continue print ('當前變量值 :', var) print ("Good bye!")
循環語句可以有 else 子句,它在窮盡列表(以for循環)或條件變為 false (以while循環)導致循環終止時被執行,但循環被break終止時不執行。
#!/usr/bin/python3 for n in range(2, 10): for x in range(2, n): if n % x == 0: print(n, '等於', x, '*', n//x) break else: # 循環中沒有找到元素 print(n, ' 是質數')