欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解Python中for循環(huán)的定義迭代方法

 更新時間:2022年04月30日 09:56:12   作者:Mr數(shù)據(jù)楊  
for循環(huán)用于迭代序列(即列表、元組、字典、集合或字符串)。for 語句的寫法如從對象開始按順序給變量賦值,元素個數(shù)重復(fù)這個過程。對象可以是列表(數(shù)組)、元組、字符串等。本文將詳細(xì)講解Python中for定義迭代方法詳解,需要的可以了解一下

Python的 for 循環(huán)

Python 是基于集合的迭代。

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

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

輸出:

曹操
孫権
劉備

可迭代對象 ,可以被傳遞給內(nèi)置的 Python 函數(shù) 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

迭代器,是一個值生產(chǎn)者,從其關(guān)聯(lián)的可迭代對象中產(chǎn)生連續(xù)的值。內(nèi)置函數(shù) next() 用于從迭代器中獲取下一個值。

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

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

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

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

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

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

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

遍歷字典

字典的遍歷循環(huán),循環(huán)變量被分配給字典的鍵。

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

同時遍歷字典的鍵和值。循環(huán)變量 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 提供了內(nèi)置range()函數(shù),返回一個產(chǎn)生整數(shù)序列的迭代。

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

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

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

for n in x:
    print(n)

輸出:

0
1
2
3
4

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

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

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

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

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

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

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

# 數(shù)值范圍必須是可以正向迭代
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 完全終止循環(huán)。

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

輸出:

曹操

continue 終止當(dāng)前迭代并進(jìn)行下一次迭代。

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

輸出:

曹操
劉備

else語句

for 循環(huán)的子句 else,類似于 while 循環(huán)的使用。

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

輸出:

曹操
孫権
劉備
結(jié)束。

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

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

輸出:

曹操

到此這篇關(guān)于詳解Python中for循環(huán)的定義迭代方法的文章就介紹到這了,更多相關(guān)Python for循環(huán)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python計算最大優(yōu)先級隊列實例

    python計算最大優(yōu)先級隊列實例

    python計算最大優(yōu)先級隊列實例,大家參考使用吧
    2013-12-12
  • Python實現(xiàn)多線程并發(fā)請求測試的腳本

    Python實現(xiàn)多線程并發(fā)請求測試的腳本

    這篇文章主要為大家分享了一個Python實現(xiàn)多線程并發(fā)請求測試的腳本,文中的示例代碼簡潔易懂,具有一定的借鑒價值,需要的小伙伴可以了解一下
    2023-06-06
  • python中如何使用xml.dom.minidom模塊讀取解析xml文件

    python中如何使用xml.dom.minidom模塊讀取解析xml文件

    xml.dom.minidom模塊應(yīng)該是內(nèi)置模塊不用下載安裝,本文給大家介紹python中如何使用xml.dom.minidom模塊讀取解析xml文件,感興趣的朋友一起看看吧
    2023-10-10
  • 使用Python快速搭建文件傳輸服務(wù)的方法

    使用Python快速搭建文件傳輸服務(wù)的方法

    這篇文章主要介紹了使用Python快速搭建一個文件傳輸服務(wù),這樣任何一個人都能打開瀏覽器把他電腦上的文件傳給我了,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2023-07-07
  • pytorch?膨脹算法實現(xiàn)大眼效果

    pytorch?膨脹算法實現(xiàn)大眼效果

    在PS中,我們可以利用液化工具對人像進(jìn)行瘦臉、放大眼睛等系列的常規(guī)操作。今天我們來了解一下這些操作的算法原理,并用pytorch?膨脹算法來實現(xiàn)大眼效果,感興趣的可以了解一下
    2021-11-11
  • Python繪制專業(yè)的K線圖 源代碼解析

    Python繪制專業(yè)的K線圖 源代碼解析

    這篇文章主要介紹了Python繪制專業(yè)的K線圖,使用Python繪制一幅專業(yè)的K線圖,是量化投資和金融數(shù)據(jù)分析的必備功課。下面我將從K線圖簡介、數(shù)據(jù)獲取、K線圖繪制及成交量繪制等方面,結(jié)合源代碼,一步步實現(xiàn)專業(yè)K線圖的繪制,需要的朋友可以參考下
    2021-10-10
  • Python實現(xiàn)文件信息進(jìn)行合并實例代碼

    Python實現(xiàn)文件信息進(jìn)行合并實例代碼

    這篇文章主要介紹了Python實現(xiàn)文件信息進(jìn)行合并實例代碼,具有一定借鑒價值,需要的朋友可以參考下
    2018-01-01
  • selenium+python實現(xiàn)自動登錄腳本

    selenium+python實現(xiàn)自動登錄腳本

    下面小編就為大家分享一篇selenium+python實現(xiàn)自動登錄腳本,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-04-04
  • Python進(jìn)階之列表推導(dǎo)與生成器表達(dá)式詳解

    Python進(jìn)階之列表推導(dǎo)與生成器表達(dá)式詳解

    這篇文章主要為大家詳細(xì)介紹了Python中列表推導(dǎo)與生成器表達(dá)式的相關(guān)知識,文中的示例代碼講解詳細(xì),具有一定的參考價值,需要的可以參考一下
    2023-04-04
  • 基于Python實現(xiàn)一鍵獲取電腦瀏覽器的賬號密碼

    基于Python實現(xiàn)一鍵獲取電腦瀏覽器的賬號密碼

    發(fā)現(xiàn)很多人在學(xué)校圖書館喜歡用電腦占座,而且出去的時候經(jīng)常不鎖屏,為了讓大家養(yǎng)成良好的習(xí)慣,本文將分享一個小程序,可以快速獲取你存儲在電腦瀏覽器中的所有賬號和密碼,感興趣的可以了解一下
    2022-05-05

最新評論