Python 流程控制之for迴圈

2021-10-03 17:42:41 字數 1791 閱讀 8804

什麼是for迴圈

迴圈就是重複做某件事,for迴圈是python提供第二種迴圈機制

為什麼要有for迴圈

理論上for迴圈能做的事情,while迴圈都可以做,之所以要有for迴圈,是因為for迴圈在迴圈取值(遍歷取值)比while迴圈更簡潔

如何用for迴圈

語法:for 變數名 in 可迭代物件**:# 可迭代物件:列表、字典、字串、元組、集合**

**1**2

**3…

案例1:列表迴圈取值:

l =

['alex_dsb'

,'lxx_dsb'

,'egon_nb'

]# 簡單版

for x in l:

# x='lxx_dsb'

print

(x)# 複雜版:

i =0

while i <3:

print

(l[i]

) i +=

1

案例2:字典迴圈取值

dic =

for k in dic:

print

(k, dic[k]

)

案例3:字串迴圈取值

msg =

"you can you up,no can no bb"

for x in msg:

print

(x)

相同之處:都是迴圈,for迴圈可以幹的事,while迴圈也可以幹

不同之處:

1.while迴圈稱之為條件迴圈,迴圈次數取決於條件何時變為假

2.for迴圈稱之為"取值迴圈",迴圈次數取決in後包含的值的個數

range() 有三種用法,用來for迴圈取數:

range(b) 生成乙個[0,1,2,…,b-1]的陣列。

range(a, b)生成乙個[a,a+1,a+2,…,b-1]的陣列。

range(a, b, n)生成乙個[a,a+n,a+2n,…,最大值小於b]的陣列。

for搭配range,可以按照索引取值,但是麻煩,所以不推薦

l =

['aaa'

,'bbb'

,'ccc'

]# len(l)

for i in

range

(len

(l))

:print

(i, l[i]

)

range()在python3裡得到的是乙隻"會下蛋的老母雞"

python2中range生成的是乙個陣列,但是在python3中,for迴圈每次去range取的時候生成乙個,閱後即焚。

for i in

range(6

):# 0 1 2 3 4 5

if i ==4:

continue

print

(i)

for i in

range(3

):print

('外層迴圈-->'

, i)

for j in

range(5

):print

('內層-->'

, j)

# 外層迴圈1次,內層迴圈5次。

補充:終止for迴圈只有break一種方案

22 Python基礎之流程控制之for迴圈

為什麼有了while迴圈,還需要有for迴圈呢?不都是迴圈嗎?我給大家出個問題,我給出乙個列表,我們把這個列表裡面的所有名字取出來。name list nick jason tank sean n 0while n 4 while n len name list print name list n ...

python流程控制 python之流程控制

電腦程式在解決某個具體問題時,包括三種情形,即順序執行所有的語句 選擇執行部分的語句和迴圈執行部分語句,這正好對應著程式設計中的三種程式執行結構流程 順序結構 選擇結構和迴圈結構。事實證明,任何乙個能用計算機解決的問題,只要應用這三種基本結構來寫出的程式都能解決。python語言當然也具有這三種基本...

流程控制之for

for 也是迴圈方法。但是用於取值的方法。for迴圈可以來取字串中字元,列表中的元素,字典中的關鍵字等 取字串中的字元 for i in hello print i,end h e l l o 取列表中元素 for i in a 11,33,w r print i,end a 11 33 w r 取...