亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python中for循環怎么定義迭代

發布時間:2022-05-05 13:41:41 來源:億速云 閱讀:146 作者:iii 欄目:開發技術

本文小編為大家詳細介紹“Python中for循環怎么定義迭代”,內容詳細,步驟清晰,細節處理妥當,希望這篇“Python中for循環怎么定義迭代”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。

Python的 for 循環

Python 是基于集合的迭代。

for <var> in <iterable>: # <iterable>是對象的集合——例如,列表或元組。
    <statement(s)> # 循環體

a = ['曹操', '孫権', '劉備']
for i in a:
    print(i)

輸出:

曹操
孫権
劉備

可迭代對象 ,可以被傳遞給內置的 Python 函數 iter() 處理,返回做迭代器

iter('曹操孫権')                             # String
<str_iterator object at 0x036E2750>

iter(['曹操', '孫権', '劉備'])                # List
<list_iterator object at 0x036E27D0>

iter(('曹操', '孫権', '劉備'))                # Tuple
<tuple_iterator object at 0x036E27F0>

iter({'曹操', '孫権', '劉備'})                # Set
<set_iterator object at 0x036DEA08>

iter({'曹操': 1, '孫権': 2, '劉備': 3})       # Dict
<dict_keyiterator object at 0x036DD990>

不可以迭代的對象

iter(1)                                   # Integer
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'int' object is not iterable

iter(1.1)                                  # Float
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'float' object is not iterable

iter(len)                                  # Built-in function
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'builtin_function_or_method' object is not iterable

迭代器,是一個值生產者,從其關聯的可迭代對象中產生連續的值。內置函數 next() 用于從迭代器中獲取下一個值。

list_ = ['曹操', '孫権', '劉備']

itr = iter(list_ )
itr
<list_iterator object at 0x031EFD10>

next(itr)
'曹操'
next(itr)
'孫権'
next(itr)
'劉備'

使用內置 list()、tuple() 和 set() 函數一次從迭代器中獲取所有值。

list_ = ['曹操', '孫権', '劉備']
itr = iter(list_)
list(itr)
['曹操', '孫権', '劉備']

itr = iter(list_)
tuple(itr)
('曹操', '孫権', '劉備')

itr = iter(list_)
set(itr)
{'劉備', '曹操', '孫権'}

遍歷字典

字典的遍歷循環,循環變量被分配給字典的鍵。

d = {'曹操': 1, '孫権': 2, '劉備': 3}

for k in d:
    print(k)

輸出:

曹操
孫権
劉備

訪問字典值的操作

for k in d:
    print(d[k])

#輸出:
#1
#2
#3

for v in d.values():
    print(v)

#輸出:
#1
#2
#3

同時遍歷字典的鍵和值。循環變量 for 不限于單個變量,可以是元組。

i, j = (1, 2)

print(i, j)
1 2

for i, j in [(1, 2), (3, 4), (5, 6)]:
    print(i, j)

輸出:

1 2
3 4
5 6

字典方法 items() 有效地將鍵/值對列表作為元組返回。

d = {'曹操': 1, '孫権': 2, '劉備': 3}

d.items()
dict_items([('曹操', 1), ('孫権', 2), ('劉備', 3)])

d = {'曹操': 1, '孫権': 2, '劉備': 3}
for k, v in d.items():
    print('k =', k, ', v =', v)

輸出:

k = 曹操 , v = 1
k = 孫権 , v = 2
k = 劉備 , v = 3

range()功能

Python 提供了內置range()函數,返回一個產生整數序列的迭代。

Python中for循環怎么定義迭代

range(<end>)返回一個產生以0開頭的整數的迭代,直到<end>但不包括<end>數值

x = range(5)
x
range(0, 5)
type(x)
<class 'range'>

range對象是可迭代的,所以可以通過for循環遍歷它們來獲取值。

for n in x:
    print(n)

輸出:

0
1
2
3
4

list() 、tuple() 一次獲取所有的循環遍歷的值。

list(x)
[0, 1, 2, 3, 4]

tuple(x)
(0, 1, 2, 3, 4)

range(<start>, <end>, <step>)返回一個迭代結果。

list(range(5, 20, 3))
[5, 8, 11, 14, 17]

# 默認為1
list(range(5, 10, 1))
[5, 6, 7, 8, 9]

list(range(5, 10))
[5, 6, 7, 8, 9]

# 數值范圍必須是可以正向迭代
list(range(-5, 5))
[-5, -4, -3, -2, -1, 0, 1, 2, 3, 4]

list(range(5, -5))
[]

list(range(5, -5, -1))
[5, 4, 3, 2, 1, 0, -1, -2, -3, -4]

break語句 和continue語句

break 完全終止循環。

for i in ['曹操', '孫権', '劉備']:
    if '孫' in i:
        break
    print(i)

輸出:

曹操

continue 終止當前迭代并進行下一次迭代。

for i in ['曹操', '孫権', '劉備']:
    if '孫' in i:
        continue
    print(i)

輸出:

曹操
劉備

else語句

for 循環的子句 else,類似于 while 循環的使用。

for i in ['曹操', '孫権', '劉備']:
    print(i)
else:
    print('結束。')

輸出:

曹操
孫権
劉備
結束。

else 如果列表被一條語句 break,則不會執行。

for i in ['曹操', '孫権', '劉備']:
    if i == '孫権':
        break
    print(i)
else:
    print('結束。')

輸出:

曹操

讀到這里,這篇“Python中for循環怎么定義迭代”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

霞浦县| 徐州市| 泰顺县| 苍溪县| 海南省| 汨罗市| 乾安县| 秀山| 武陟县| 原平市| 麻栗坡县| 密山市| 尼玛县| 麻阳| 松阳县| 黔江区| 四子王旗| 宁陵县| 卫辉市| 和平区| 灌云县| 红河县| 锦屏县| 大连市| 宿迁市| 锡林浩特市| 洛浦县| 秀山| 贵州省| 罗平县| 绥江县| 于都县| 九江县| 芦溪县| 龙江县| 潞城市| 高清| 电白县| 天镇县| 裕民县| 南康市|