迭代器生成器

2021-09-19 01:25:46 字數 1661 閱讀 3472

dir(open)

f=open('test.txt','w') r w x a b +

read readlines readline  

write writelines

seek tell

closed  mode name encoding

異常 try: except  else  finally

列表推導式

集合

s=

字典

di=di.fromkeys([1,2,3,4],'lu')  #效果一樣

迭代器

迭代

li=[1,2,3,4,5]

li.__iter__() #變成迭代器  

a=li.__iter__()#用變數接收

a.__next__()

iter(li)  #變成迭代器    

b=iter(li)#變數接收

next(b)

b.__next__() #同樣可以用這個方法

#next()  實現迭代器的方法   一定要賦值

a=iter(li)

>>> for i in a:

print(i)

##生成器  本質上就是迭代器

def fun():

i=0while i <5:

print('我是')

yield 'stop' #暫停 然後返回值

i += 1

print('lucky',i)

##斐波拉切 1,1,2,3,5,8,13

def fib(num):

n=0a,b=0,1

while n def fib(num):

n=0a,b=0,1

while n 模組 包

模組 py檔案

包 :就是很多py檔案放在乙個資料夾裡面

模組:內建模組   第三方模組

# import random  #匯入了所有內容 占用記憶體多

#from copy import deepcopy  #指定匯入

第三方模組  不是python自帶,別人(自己)寫的

同路徑小白鼠.test()  本質 函式

小白鼠.test1   本質 變數名

包 import xml   #dir(xml)   檢視匯入

import xml.dom    #dir(xml.dom)

import xml.dom.domerg  #dir(xml.dom.doerg)

time

import time

time.localtime()

生成器 迭代器

最近見天一直在看廖大的python教程,卻發現很多基礎看著很簡單,但卻不會應用,歸根結底還是因為理解不到位,故而又將教程學了一遍,並將自己的理解記錄一下,也方便後面查閱。由於沒有相關程式設計基礎,有些理解可能是錯的,敬請批評指正。想深入具體學習廖大部落格請移步廖雪峰的官方 有時候用迴圈生成列表太過繁...

迭代器,生成器

迭代器 生成器 生成器的第1種實現方式 列表生成式改為生成器 python中yield關鍵字 函式中如果有yield,那麼呼叫這個函式的返回值為生成器。當生成器g呼叫next方法,執行函式,知道遇到yield就停止 再執行next,從上一次停止的地方繼續執行 函式中遇return直接退出,不繼續執行...

迭代器 生成器

迭代器 iter 可迭代物件 下乙個元素的值 next 可迭代物件 類中實現 iter 方法 提供迭代器 實現迭代器 import time class mylistiter object 迭代器類 def init self,data self.data data self.index 0 def...