Python for in循環


for..in語句是另一個循環語句,它迭代一個對象的序列,例如經歷序列中的第一項。在后面的章節,我們將會看到更多關於序列的細節。現在,你需要知道的是一個序列只是一個有序的項目的集合。

例如 (保存為 for.py):

  1. for i in range(1, 5):
  2. print(i)
  3. else:
  4. print('for循環結束')

輸出:
1
2
3
4
for循環結束

它是如何工作的:
打印一個數字序列。我們使用內置的range函數生成這個數字序列。

我們在這里所做的是提供兩個數字,range返回一個從第一個數字到第二個數字的一個數字序列。例如,range(1,5)給出序列[1, 2, 3, 4]。默認情況下,range 步距取為1。如果我們提供第三個數字,range那么它變成了步距。例如range(1,5,2)得到[1,3]。請記住,范圍擴展到第二號碼,即它不包 括第二個數字。

注意,range()生成一個數字序列,當for循環請求下一個項目時,它一次只生成一個數字。如果你想立刻看到完整的數字序列,使用list(range())。list(列表)將在[數據結構章]中解釋。

for循環然后遍歷這個范圍,for i in range(1,5)相當於 for i in [1, 2, 3, 4],這就像把序列中的每一個數(或對象)分配給i,一次一個,然后為每個i值執行該語句塊。在本例中,在語句塊中我們只是打印它的值。

記住,else部分是可選的。當包括它時,除非遇到[break][#中斷)語句,當for循環結束時,它執行一次。

記住,for..in循環可以作用於任何序列。在這里,我們對一個由內建的range函數生成的一個數字列表,但是一般來說,我們可以使用任何種類對象的任何類型的序列!在后面的章節,我們將詳細探討這個想法。

C/C++/Java/C#程序要注意:

    • Python的for循環完全不同於C/c++的for循環。c#程序員會注意到,在Python中for循環類似於c中的foreach循環c#。Java程序員會注意到,同樣類似於在Java 1.5中的to for (int i : IntArray)。
    • 在C/c++中,如果你想寫for (int i = 0; i < 5; i++),那么在Python中你只要寫 for i in range(0,5)。正如您可以看到的,在Python中for循環更簡單,更富有表現力且不易出錯。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM