python loop語句 python 迴圈語句

2021-10-12 11:16:34 字數 1964 閱讀 3258

在python中,迴圈有乙個語句:for語句。

簡單的for迴圈例子

>>> hello = "world"

>>> for i in hello:

... print iwo

rld上面這個for迴圈是怎麼工作的呢?

1.hello這個變數引用的是"world"這個str型別的資料

2.變數 i 通過hello找到它所引用的"world",然後從第一字元開始,依次獲得該字元的引用。

3.當 i="w"的時候,執行print i,列印出了字母w,結束之後迴圈第二次,讓 i="e",然後執行print i,列印出字母e,如此迴圈下去,一直到最後乙個字元被列印出來,迴圈自動結束

順便補充乙個print的技巧,上面的列印結果是豎著排列,也就是每列印乙個之後,就自動換行。如果要讓列印的在一行,可以用下面的方法,在列印的後面加乙個逗號(英文)

>>> for i in hello:

... print i,

w o r l d

>>> for i in hello:

... print i+",", #為了美觀,可以在每個字元後面加乙個逗號分割

w, o, r, l, d,

因為可以通過使用索引編號(偏移量)做為下標,得到某個字元。所以,還可以通過下面的迴圈方式實現上面**中同樣功能:

>>> for i in range(len(hello)):

... print hello[i]wo

rld其工作方式是:

1.len(hello)得到hello引用的字串的長度,為5

2.range(len(hello),就是range(5),也就是[0, 1, 2, 3, 4],對應這"world"每個字母的編號,即偏移量。

3.for i in range(len(hello)),就相當於for i in [0,1,2,3,4],讓i依次等於list中的各個值。當i=0時,列印hello[0],也就是第乙個字元。然後順序迴圈下去,直到最後乙個i=4為止。

以上的迴圈舉例中,顯示了對字str的字元依次獲取,也涉及了list,感覺不過癮呀。那好,看下面對list的迴圈:

>>> ls_line = ['hello', 'i am hiekay', 'welcome you', '']

>>> ls_line

['hello', 'i am hiekay', 'welcome you', '']

>>> for word in ls_line:

... print word

hello

i am hiekay

welcome you

>>> for i in range(len(ls_line)):

... print ls_line[i]

hello

i am hiekay

welcome you

for一般化的公式,可以這麼表示:

for 迴圈規則:

操作語句

例子:找出100以內的能夠被3整除的正整數。

分析:這個問題有兩個限制條件,第一是100以內的正整數,根據前面所學,可以用range(1,100)來實現;第二個是要解決被3整除的問題,假設某個正整數n,這個數如果能夠被3整除,也就是n%3(%是取餘數)為0.那麼如何得到n呢,就是要用for迴圈。

流程圖:

image

下面寫**就是按圖索驥了。

**:#! /usr/bin/env python

#coding:utf-8

aliquot =

for n in range(1,100):

if n%3 == 0:

print aliquot

結果:[3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48, 51, 54, 57, 60, 63, 66, 69, 72, 75, 78, 81, 84, 87, 90, 93, 96, 99]

分支結構控制語句與迴圈結構控制語句(Python)

if 條件表示式 語句體if 條件表示式 語句體1 else 語句體2if 條件表示式 語句體1 elif 語句表示式2 語句體2 elif 語句表示式 n 1 語句體n 1else 語句體nx 5if x 0 y 1else y 0可用三元運算改寫為 x 5y 1if x 0 else 0whil...

ElasticSearch查詢方法(python)

es.search index my index doc type test type 或者 body es.search index my index doc type test type body body term body 查詢name python 的所有資料 es.search inde...

robot framework自定義python庫

自定義python庫的好處 robot framework填表式,將python的靈活性弄沒了,但是不要擔心,rf早就想到了解決辦法,就是擴充自己的庫.1.在python應用程式包目錄下建立乙個新包 d python27 lib site packages newlibrary 這裡注意資料夾new...