我們首先要知道什麼是可迭代的物件(可以用for迴圈的物件)iterable:
一類:list,tuple,dict,set,str
二類:generator,包含生成器和帶yield的generatoe function
而生成器不但可以作用於for,還可以被next()函式不斷呼叫並返回下乙個值,可以被next()函式不斷返回下乙個值的物件稱為迭代器:iterator
生成器都是iterator物件,但list,dict,str是iterable,但不是iterator,要把list,dict,str等iterable轉換為iterator可以使用iter()函式
next()用法:
next(iterator[, default])
terator -- 可迭代物件
default -- 可選,用於設定在沒有下乙個元素時返回該預設值,如果不設定,又沒有下乙個元素則會觸發 stopiteration 異常。
>>> list_ = [1,2,3,4,5]>>> it = iter(list_)>>> next(it,'-1')1
>>> next(it,'-1')
>>>2
>>> next(it,'-1')
>>>3
>>> next(it,'-1')
>>>4
>>> next(it,'-1')
>>>5
>>> next(it,'-1')
>>>'-1'
參考自: python 中沒有i 或者i
在python中是沒有自增和自減的,但在python中存在 i i 1和 i i 1 的情況。因為python的模型規定,數值物件是不可改變的。i i 1 相當於重新建立了乙個變數 i 而不是改變了 i 中的數值。下面是例子說明 給a賦值10,給b賦值10。雖然變數名不同,但它們本質都是呼叫了10,...
python的iter 與next 函式
list tuple等都是可迭代物件,我們可以通過iter 函式獲取這些可迭代物件的迭代器。然後我們可以對獲取到的迭代器不斷使 next 函式來獲取下 條資料。iter 函式實際上就是調 了可迭代物件的iter 法。li 11 22,33 44,55 li iter iter li next li ...
python中物件導向I
要了解物件導向我們首先要了解什麼是面向過程 面向過程 根據業務邏輯從上到下寫 物件導向 將資料與函式繫結到一起,進行封裝,這樣能夠更快速的開發程式,減少了重複 的重寫過程 物件導向程式設計的2個非常重要的概念 類和物件 在使用物件的過程中,為了將具有共同特徵和行為的一組物件抽象定義,提出了另外乙個新...