python文件系统问题
麻烦看看我这是怎么个情况。file = open('tx.txt','r',encoding = 'UTF-8')
list(file)
['从明天起,做一个幸福的人\n', '喂马、劈柴,周游世界\n', '从明天起,关心粮食和蔬菜\n', '我有一所房子,面朝大海,春暖花开\n', '\n', '从明天起,和每一个亲人通信\n', '告诉他们我的幸福\n', '那幸福的闪电告诉我的\n', '我将告诉每一个人\n', '给每一条河每一座山取一个温暖的名字\n', '陌生人,我也为你祝福\n', '愿你有一个灿烂的前程\n', '愿你有情人终成眷属\n', '愿你在尘世获得幸福\n', '我只愿面朝大海,春暖花开']
list(file)
Traceback (most recent call last):
File "<pyshell#55>", line 1, in <module>
list(file)
IndexError: list index out of range
list(file)
[]
然后我把文件关闭了重新开
file.close()
file = open('tx.txt','r',encoding = 'UTF-8')
list(file)
'从明天起,做一个幸福的人\n'
list(file)
[]
list(file)
Traceback (most recent call last):
File "<pyshell#55>", line 1, in <module>
list(file)
IndexError: list index out of range
这是什么情况!!
本帖最后由 jackz007 于 2021-11-23 19:31 编辑
file = open('tx.txt','r',encoding = 'UTF-8')
list(file) #这一句会从头到尾读取整个文件,文件指针会位于文件结尾
list(file) #由于文件指针已经在文件结尾,因而无法读到任何内容,所以,list(file) = [],是个空列表,而 list(file) 自然就会下标超界了
如果一定要这样操作,可以稍作修改
file = open('tx.txt','r',encoding = 'UTF-8')
list(file)
file . seek(0 , 0) # 添加此句
list(file) jackz007 发表于 2021-11-23 17:12
如果一定要这样操作,可以稍作修改
soga,明白了明白了,谢谢!!!
页:
[1]