python中可迭代物件的解釋及判斷方法

2021-10-03 14:25:41 字數 2024 閱讀 3612

對大多數初學者來說,可迭代這個名詞很陌生,但他的另乙個說法有一點基礎的人一定都不陌生,就是遍歷。

在python中,對list、tuple、dict、set、str等型別的資料使用for…in…的迴圈語法從其中依次拿到資料進行使用,我們把這樣的過程稱為遍歷,也叫迭代。但是,並不是所有的資料型別都可以進行遍歷(迭代),我們通過例項來看:

1.列表

# 測試列表是否可迭代

for list1 in[1

,2,3

]:print

(list1,end=

'')

輸出結果

123
2.元組

# 測試元組是否可迭代

for tuple1 in(4

,5,6

):print

(tuple1, end=

'')

輸出結果

456
3.字串

# 測試字串是否可迭代

forstr

in'hello world'

:print

(str

, end=

'')

輸出結果

hello world
4.整型

# 測試整型是否可迭代

for int1 in

123:

print

(int1, end=

'')

輸出結果

traceback (most recent call last)

: file "a:/py_demo/day_5.py"

, line 52,in

for int1 in

123:

typeerror:

'int'

object

isnot iterable

process finished with exit code 1

這裡報錯就可以看出整型不可以迭代,仔細觀察一下報錯的內容"typeerror: 『int』 object is not iterable",這句話的翻譯過來就是:整型的物件不可以迭代。

除此以外,還有一種快捷的方法可以判斷該資料型別是否可以迭代。

利用iterable

from collections import iterable

print

(isinstance([

], iterable)

)# 列表

print

(isinstance((

), iterable)

)# 元組

print

(isinstance

('str'

, iterable)

)# 字串

print

(isinstance

(100

, iterable)

)# 整型

print

(isinstance

(, iterable)

)# 字典

print

(isinstance

(, iterable)

)# 集合

輸出結果

true

true

true

false

true

true

這就是乙個比較直接的方法

python中 可迭代物件

迭代是訪問集合元素的 種 式。迭代器是 個可以記住遍歷的位置的物件。迭代器物件從集合的第 個元素開始訪問,直到所有的元素被訪問完結束。迭代器只能往前不會後退。我們已經知道可以對list tuple str等型別的資料使 for in 的迴圈語法從 其中依次拿到資料進 使 我們把這樣的過程稱為遍歷,也...

python中可迭代物件反轉

1 字串反轉 a 839574 reversed a object at 0x00000215caca0d60 for i in reversed a reversed反轉為迭代器物件 print i,end 4 7 5 9 3 8 a 839574 a.reverse 字串不能都就地反轉 trac...

Python 可迭代物件

1.可迭代物件 以直接作用於for迴圈的資料型別有以下幾種 一類是集合資料型別 如 list tuple dict set str等 一類是generator,包括生成器和帶yield 的 generator function 這些可以直接作用於for迴圈的物件統稱為可迭代物件 iterable 2...