PythonioError: File not open for reading,怎么解决?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (1738)

当我试图在Python中打开一个文件时,会遇到一个错误。这是我的代码:

>>> import os.path
>>> os.path.isfile('/path/to/file/t1.txt')
>>> True
>>> myfile = open('/path/to/file/t1.txt','w')
>>> myfile
>>> <open file '/path/to/file/t1.txt', mode 'w' at 0xb77a7338>
>>> myfile.readlines()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IOError: File not open for reading

我也试过:

for line in myfile:
    print(line)

有人知道为什么会发生这个错误吗?

提问于
用户回答回答于

通过将模式指定为'w';打开该文件,以便读取:

open(path, 'r')

'r'是默认的,所以可以省略它。如果您同时需要读写,请使用+模式:

open(path, 'w+')

w+打开用于写入的文件(将其截断为0字节),但也允许您从中读取文件。如果你用r+它也是开放的读写,但不会被截断。

用户回答回答于

在代码中执行:

myfile = open('/path/to/file/t1.txt','w')

,它指定它用于写入,您需要做的是将它设置为r,这是用于读的。

myfile = open('/path/to/file/t1.txt','r')

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励