在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問(wèn)答/Python/ Python 文件讀取時(shí),在for循環(huán)中的tell方法返回錯(cuò)誤

Python 文件讀取時(shí),在for循環(huán)中的tell方法返回錯(cuò)誤

代碼每次迭代一行,期望tell方法返回當(dāng)前指針的位置。但是實(shí)際返回的是整片文檔的最后的位置;
請(qǐng)幫我看看問(wèn)題在哪里?

My Daily.txt

Good morning:
    As we known, Chengdu IS one of largest cities in the world!
    Set up
    get up
    take off
OK

代碼如下

with open(r'My Daily', 'r+') as f:
    for line in f:
        print f.tell()
回答
編輯回答
不二心

for line in f:
是在調(diào)用 f.next().
f.next() 方法被調(diào)用的時(shí)候,f.tell() 方法不可以被調(diào)用

如果需要返回當(dāng)前指針位置,可以這樣
pos = 0
with open(r'My Daily', 'r+') as f:

for line in f:
    pos += len(lien)
    #print f.tell()
    print(post)
2017年11月17日 16:08
編輯回答
心夠野

當(dāng)對(duì) 文件對(duì)象f 使用 for 遍歷的時(shí)候,會(huì)將 f 的內(nèi)容讀取出來(lái),生成可迭代對(duì)象進(jìn)行遍歷。

所以你輸出的位置總是在最后

2018年7月25日 19:51