python之for循環和while循環的使用

咱們在寫代碼時常常會用到循環,python中有for循環和while循環,咱們來詳細的瞭解一下這兩種循環。python

for循環

Python for循環能夠遍歷任何序列的項目,如一個列表或者一個字符串。函數

咱們經過一個例子來看一下for循環的具體使用,咱們經過range() 函數建立一個整數列表,而後將列表中的元素經過for循環打印出來。code

# for i in range(5)開始迭代的時候,生成一個數值0,第二次迭代再生成數值1,第三次迭代再生成數值2,

for i in range(5):
    print(i)

# 輸出:
0
1
2
3
4

上面是使用了range()函數,咱們試試本身定義一個列表來經過for循環打印:blog

list1 = ['a', 'b', 'c']
for i in list1:
    print(l)

# 輸出:
a
b
c

仔細看上面兩個例子,咱們發現,循環每次迭代時,for會從序列中取一個元素賦值給控制變量i(可本身定義),下一輪迭代又取下一個元素賦值給i。字符串

for循環使用 else 語句get

除了使用單獨的for語句,還可使用for ... else語句,else中的語句會在循環正常執行完的狀況下執行。it

list1 = ['a', 'b', 'c']
for i in list1:
    print(i)
else:
    print("循環正常執行完畢")
# 輸出:
a
b
c
循環正常執行完畢

上面咱們說到循環正常執行完畢的狀況,那確定是還有循環不正常執行完畢的狀況。什麼狀況就算不正常執行完畢的退出呢?像經過break、continue語句退出循環的就不算正常執行完畢。for循環

  • break語句:退出整個循環,若是嵌套了循環,則退出break所在的那層循環。變量

  • continue語句:跳過當前循環的剩餘語句,而後繼續進行下一輪循環。循環

  • pass語句:不作任何事情,通常用作佔位語句。

for迭代字典

for迭代字典時,能夠分爲不一樣的幾種方式:

  • 經過keys()迭代字典的key
dict1 = {'name': 'Tom', 'age': 11, 'sex': 'man'}

for i in dict1.keys():
    print(i)

# 輸出:
name
age
sex
  • 經過values()迭代字典的value
for i in dict1.values():
    print(i)

# 輸出:
Tom
11
man
  • 經過items()同時迭代key和value
for k, v in dict1.items():
    print(k, v)

# 輸出:
name Tom
age 11
sex man

range() 函數的介紹

python range() 函數可建立一個整數列表,通常用在 for 循環中

語法:range(start, stop[, step])
  • start:計數從 start 開始。默認是從 0 開始。例如range(5)等價於range(0, 5);
  • stop:計數到 stop 結束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]沒有5
  • step:步長,默認爲1。例如:range(0, 5) 等價於 range(0, 5, 1)

while循環

while循環和for循環都能循環作一件重複的事情。不一樣的地方在於for循環是在序列窮盡時中止,而while循環是在條件不成立時中止。 while循環的執行語句能夠是單個語句或語句塊,判斷條件能夠是任何表達式,任何非零、或非空(null)的值均爲true。當判斷條件假false時,循環結束。

  • 真值表

咱們經過一個實例來看一下while循環的使用:

a = 3
while a >= 1:
    print(a)
    a -= 1

# 輸出:
3
2
1

循環條件爲a>=1,因此當這個條件成立時就會繼續循環,打印a。當a<1時就會中止循環。

固然,若是咱們想要中途終止循環也可使用breakcontinue語句。

while循環使用else

while循環和for循環同樣,也可使用else語句,咱們一塊兒來看一下:

a = 3
while a >= 1:
    print(a)
    a -= 1
else:
    print('循環結束 !')

# 輸出:
3
2
1
循環結束 !

無限循環

若是你想要循環永遠執行,可讓條件讓真一直成立,好比說:

a = 1
while a == 1:
    print(a)
else:
    print('循環結束 !')

# 會一直循環打印1

break跳出循環

a = 0
while a < 10:
    print(a)
    a = a + 1
    if a == 3:
        print("break跳出循環")
        break
else:
    print('循環結束 !')

# 輸出:
0
1
2
break跳出循環

continue進去下一輪循環

for i in range(1, 11):
    if i % 2:
       continue   
    print(i)

# 輸出
2
4
6
8
10

上面代碼中使用了continue語句,if 條件語句的意思是若是i%2爲真(不等於0)就進入下一輪循環。若是i%2爲假(等於0)時會執行print(i)語句,打印i 。

參考:https://www.9xkd.com/

相關文章
相關標籤/搜索