可迭代的資料類型是什麼意思

在Python中,可疊代的資料類型是指那些可以通過for迴圈或使用疊代器來遍歷其元素的資料結構。這些資料結構提供了iter方法,當你調用這個方法時,它會返回一個疊代器,這個疊代器可以依次返回該資料結構中的每個元素,直到所有元素都被訪問完畢。

Python中的可疊代資料類型包括列表、元組、字典、集合、字元串,以及許多其他對象,如檔案、網頁爬蟲、數據庫等。你也可以定義自己的類,使其成為可疊代的,這只需要實現iter方法。

例如,以下Python對象都是可疊代的:

你可以這樣使用for迴圈來遍歷這些資料結構:

for element in iterable_object:
    # do something with element

或者使用一個迴圈來累加所有元素:

total = 0
for element in iterable_object:
    total += element

疊代器是一個特殊的對象,它能夠記住它上次訪問的位置,並允許你一次訪問一個元素。當你使用next()方法來獲取一個元素時,疊代器會返回該元素,直到沒有更多的元素可以返回,此時會拋出StopIteration異常。

你可以使用iter()函數來創建一個疊代器,或者直接從一個可疊代的對象開始:

my_iterable = [1, 2, 3, 4, 5]
my_iterator = iter(my_iterable)

# using the iterator
next_element = next(my_iterator)
print(next_element)  # output: 1

# continuing to iterate
next_element = next(my_iterator)
print(next_element)  # output: 2

在Python中,可疊代性和疊代器是兩個不同的概念,但他們一起工作,使得遍歷和處理資料結構變得非常簡單和直觀。