Python自带的file 文件处理指针


上码

file1 = open ("xxx","r")

for i in file1:
    print (i)

for z in file1:
    print (z)


在python中打开文件,如果连续两次读取完整的python文件,那么就会出现第二次什么
都读不到的情况,以上代码不会把文件输出两次

原因是python在读取文件内容的时候是用指针的方式,相当于你的手指指着那一行文字
内容辅助你本人进行阅读,第一次读完整个文件的时候,指针已经跑到最底下了,再往
下的内容都是空白的,所以第二次调用文件的时候,就会什么都读取不到。

解决方法是在第二次读取文件之前插入一个file1.seek(0),这个表示让指针回到开头,就
好像你把手指重新放到第一行,来辅助你重新阅读一次文件括号里的数字0表示开头。

file1 = open ("xxx","r")

for i in file1:
    print (i)

file1.seek(0)

for z in file1:
    print (z)

当然还有一种解决方法是,你再打开一次文件。file2 = open("xxx","r")

留言

張貼留言