Python的file.read()
函数不会读取任何内容。无论文件内部是什么,它总是返回''
。它能是什么?我知道它一定是直截了当的,但我无法弄清楚。
UPD :我试过'r'和'w +'模式。
UPD :代码为:
>>> file = open('helloworld', 'w+')
>>> file.read()
''
解决方案:我刚才发现,虽然文件可以在'w +'模式下阅读,但Python在打开后会截断它。应该使用'r'(或'r +')模式。谢谢大家。
答案 0 :(得分:2)
警告:我只是在猜测那些不起作用的行为:
如果你在使用Python解释器,那么 你做了这样的事情:
>>> f = open('myfile.txt', 'r')
>>> f.read()
...你会将整个文件打印到屏幕上。
但如果再次这样做:
>>> f.read()
''
...你得到一个空字符串。
因此,如果您还没有,可以尝试重新启动解释器。
“要读取文件的内容,请调用f.read(size),它读取一些数据并将其作为字符串返回.size是一个可选的数字参数。当省略size或negative时,整个内容为文件将被读取并返回;如果文件的大小是机器内存的两倍,则会出现问题。否则,最多读取并返回大小字节。如果文件末尾已到达,则f.read()将返回一个空字符串(“”)。“