Python 3 2 迭代器的next函式

2021-07-10 23:59:48 字數 669 閱讀 6640

在python中,使用iter函式可以獲得有序聚合型別的迭代器,我個人將迭代器理解為帶有next指標的單向鍊錶,獲取到的迭代器為鍊錶的表頭,表頭內容為空,next指標指向有序聚合型別的第乙個元素。在訪問鍊錶最後乙個元素的next指標時,python會報錯stopiteration。

python3.x以上的版本在使用next函式時需要注意的是:next()函式在3.x以上的版本更改為__next__().

使用for迭代器列印檔案中的內容的**如下:

file_obj=open(r'e:\project\python\123.txt','r')

for string in file_obj:

string=string.rstrip('\n')

print(string)

file_obj.close()

在上述**中,檔案物件file_obj為有序聚合型別,for迴圈會自動呼叫file_obj的迭代器,並呼叫該迭代器的next函式,知道發生

stopiteration錯誤。

下邊的**模擬for迴圈中的迭代器,顯式呼叫next函式訪問字串的元素。

s='www.scu.edu.com'

it=iter(s)

length=len(s)

i=0while i

Python3 2官方文件翻譯 迭代器

到眼下為止。你可能已注意到很多容器物件都能夠用for 語句進行迴圈 這樣的訪問風格清楚簡潔方便。迭代器的應用是python 遍歷統一。在這樣的場景背後。for語句呼叫容器物件 iter 方法。函式返回乙個迭代器物件。在迭代器物件裡定義了每次僅僅能訪問乙個元素的方法 next 當容器裡面沒有元素的時候...

python3 2筆記(程式設計)

python中對檔案 資料夾的操作需要涉及到os模組和shutil模組。一 檔案開啟 f open name mode buffering 入口引數 name 檔名 mode 選項,字串 buffering 是否緩衝 0 不緩衝,1 緩衝,1的int數 緩衝區大小 返回值 檔案物件 mode 選項 ...

Python3 2 官方文件教程 列表

第三章 資料結構 這章將詳細學習你以前已經知道的知識,同時也會新增一些新知識。3.1 列表 列表資料型別有很多方法,以下是列表物件的所有方法 新增單個元素到列表末尾,等同於 a len a x list.extend l 通過新增指定列表中所有的元素來擴充套件列表,等同於 a len a l.lis...