tft每日頭條

 > 生活

 > pythonfor循環的基本語法形式是

pythonfor循環的基本語法形式是

生活 更新时间:2025-03-26 00:03:51

Python 的 for 語句與 C 或 Pascal 中的不同。Python 的 for 語句不叠代算術遞增數值(如 Pascal),或是給予用戶定義叠代步驟和暫停條件的能力(如 C),而是叠代列表或字符串等任意序列,元素的叠代順序與在序列中出現的順序一緻。 例如:

pythonfor循環的基本語法形式是(Python的for語句與C或Pascal的區别)1

遍曆集合時修改集合的内容,會很容易生成錯誤的結果。因此不能直接進行循環,而是應遍曆該集合的副本或創建新的集合:

pythonfor循環的基本語法形式是(Python的for語句與C或Pascal的區别)2

那用什麼來遍曆數字序列呢?内置函數 range() 常用于遍曆數字序列,該函數可以生成算術級數:

pythonfor循環的基本語法形式是(Python的for語句與C或Pascal的區别)3

生成的序列不包含給定的終止數值;range(10) 生成 10 個值,這是一個長度為 10 的序列,其中的元素索引都是合法的。range 可以不從 0 開始,還可以按指定幅度遞增(遞增幅度稱為 '步進',支持負數):

pythonfor循環的基本語法形式是(Python的for語句與C或Pascal的區别)4

range() 和 len() 組合在一起,可以按索引叠代序列:

pythonfor循環的基本語法形式是(Python的for語句與C或Pascal的區别)5

不過,大多數情況下,enumerate() 函數更便捷。

但是,如果隻輸出 range,會出現意想不到的結果:

pythonfor循環的基本語法形式是(Python的for語句與C或Pascal的區别)6

range() 返回對象的操作和列表很像,但其實這兩種對象不是一回事。叠代時,該對象基于所需序列返回連續項,并沒有生成真正的列表,從而節省了空間。

這種對象稱為可叠代對象 iterable,函數或程序結構可通過該對象獲取連續項,直到所有元素全部叠代完畢。for 語句就是這樣的架構,sum() 是一種把可叠代對象作為參數的函數:

pythonfor循環的基本語法形式是(Python的for語句與C或Pascal的區别)7

當然,講到for循環,怎麼會少了break,continue語句及else子句呢

break 語句和 C 中的類似,用于跳出最近的 for 或 while 循環。

循環語句支持 else 子句;for 循環中,可叠代對象中的元素全部循環完畢,或 while 循環的條件為假時,執行該子句;break 語句終止循環時,不執行該子句。 請看下面這個查找素數的循環示例:

pythonfor循環的基本語法形式是(Python的for語句與C或Pascal的區别)8

(沒錯,這段代碼就是這麼寫。仔細看:else 子句屬于 for 循環,不屬于 if 語句。)

與 if 語句相比,循環的 else 子句更像 try 的 else 子句: try 的 else 子句在未觸發異常時執行,循環的 else 子句則在未運行 break 時執行。try 語句和異常詳見 異常的處理。

continue 語句也借鑒自 C 語言,表示繼續執行循環的下一次叠代:

pythonfor循環的基本語法形式是(Python的for語句與C或Pascal的區别)9

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2025 - www.tftnews.com All Rights Reserved