天天看點

Python基礎入門必學内容:判斷語句與循環語句

一、if語句

關鍵字:if、elif、else,寫法如下:

# if
if 條件:   # (條件可以是任意表達式)
# 條件成立,執行此處代碼,條件不成立,跳過此處代碼,繼續往下執行其他diamante

# if -- else
if 條件: 
# 條件成立,執行此處代碼,後面的else語句不會執行
else:
# 條件不成立,執行此處代碼


# if -- elif --  else
if 條件一:
# 條件一成立,執行此處代碼,後面的elif語句和else語句都不會執行
elif 條件二:
# 條件一不成立,條件二成立,執行此處代碼,後面的elif語句和else語句都不會執行
elif 條件三:
# 條件二不成立,條件三成立,執行此處代碼,後面elif語句和else語句都不會執行
else:
# 以上條件都不成立,執行此處代碼
      

以下是執行個體:

a = [1,2,3]
b = 5

if b == 5:  # 注意一個=是指派,兩個等号是比較運算符
print('這是測試1')

if b>2:
print('這是測試2')
else:
print('這是測試3')

if 1 in a:
print('這是測試4')
elif 2 in a:
print('這是測試5')
elif 3 in a:
print('這是測試6')
      

運作結果:

這是測試1
這是測試2
這是測試4
      

注意:

一個if語句中,隻能有一個if,elif可以沒有或者有多個,else可以沒有或者隻能有一個

二、while循環

關鍵字:whille,格式如下

while 條件:

  # 需要循環執行的代碼
      

條件可以是任意表達式,隻要為True就會執行while語句中的代碼

注意:條件一定要設定能終止程式的條件,防止死循環

'''
學習中遇到問題沒人解答?小編建立了一個Python學習交流QQ群:725638078
尋找有志同道合的小夥伴,互幫互助,群裡還有不錯的視訊學習教程和PDF電子書!
'''
a = 10
while a > 1:   # 當a<1時循環結束
print('條件成立,這裡是循環體中的代碼,目前a的值是',a)
a -= 1
      

運作結果:

條件成立,這裡是循環體中的代碼,目前a的值是 10
條件成立,這裡是循環體中的代碼,目前a的值是 9
條件成立,這裡是循環體中的代碼,目前a的值是 8
條件成立,這裡是循環體中的代碼,目前a的值是 7
條件成立,這裡是循環體中的代碼,目前a的值是 6
條件成立,這裡是循環體中的代碼,目前a的值是 5
條件成立,這裡是循環體中的代碼,目前a的值是 4
條件成立,這裡是循環體中的代碼,目前a的值是 3
條件成立,這裡是循環體中的代碼,目前a的值是 2
      

while循環中的break和continue

  • break:終止循環,跳出循環體
  • continue:中止目前本輪循環,開啟下一輪循環
a = 10
while True:
print('條件成立,這裡是循環體中的代碼,目前a的值是',a)
a -= 1
if a < 8:    # 如果a<8就會終止循環
print('循環結束')
break

b = 0
while True:
b += 1
if b == 3:    # 如果b等于3時就會跳出本次循環,開啟下一輪循環
continue
else:
print('條件成立,這裡是循環體中的代碼,目前b的值是', b)
if b >= 5:
print('循環結束')
break
      
條件成立,這裡是循環體中的代碼,目前a的值是 10
條件成立,這裡是循環體中的代碼,目前a的值是 9
條件成立,這裡是循環體中的代碼,目前a的值是 8
循環結束
條件成立,這裡是循環體中的代碼,目前b的值是 1
條件成立,這裡是循環體中的代碼,目前b的值是 2
條件成立,這裡是循環體中的代碼,目前b的值是 4
條件成立,這裡是循環體中的代碼,目前b的值是 5
循環結束
      

while循環中的else

循環條件不成立,退出循環執行else中的代碼,如果使用break跳出循環,不會執行else中的代碼

n = 1
while n < 10:
print('這是第{}次循環'.format(n))
if n == 5:
break
n += 1
else:
print('while循環對應的else')
      
這是第1次循環
這是第2次循環
這是第3次循環
這是第4次循環
這是第5次循環
      

三、for循環

關鍵字:for

for循環可以周遊任何序列的項目,格式如下

for x in xxx:

  # 循環周遊xxx的代碼
      
  • 通過周遊的對象來控制循環次數
  • 周遊完畢就循環完畢
  • for循環中的break和continue同樣适用
'''
學習中遇到問題沒人解答?小編建立了一個Python學習交流QQ群:725638078
尋找有志同道合的小夥伴,互幫互助,群裡還有不錯的視訊學習教程和PDF電子書!
'''
li = ["張三", "李四", "王五"]
for name in li:
print(name)

print("------分割線-------")
# 直接周遊字典:得到的是字典的鍵
dic = {"name":"zhangsan", "age":18, "city":"guangzhou"}
for i in dic:
print(i)

print("------分割線-------")
# 周遊字典的鍵值對
for k, v in dic.items():
print(k, v)
      
張三
李四
王五
------分割線-------
name
age
city
------分割線-------
name zhangsan
age 18
city guangzhou
      

四、range()函數

range()是python的一個内置函數,在自動化測試中經常會用到這個函數,也常結合循環使用,用于控制循環次數

  • range(n):預設生成一個 0到n-1的整數序列,對于這個整數序列,我們可以通過list()函數轉化為清單類型的資料。
  • range(n,m):左閉右開預設生成一個n到m-1的整數序列,對于這個整數序列,我們可以通過list()函數轉化為清單類型的資料。
  • range(n,m,k):左閉右開相當于其他函數裡面的for循環。n 初始值 m 結束值 k 步長,會生成初始值為n,結束值為m-1,遞減或者是遞增的整數序列。
# 周遊range,會從0開始,一直到99,列印100遍後就會停止,但也可以用break和continue控制循環
for i in range(100):
print(i)
print('第{}遍,hello python'.format(i + 1))
if i >= 4:
break
      
0
第1遍,hello python
1
第2遍,hello python
2
第3遍,hello python
3
第4遍,hello python
4
第5遍,hello python