import os.path
os.path.exists('~/fileToExperiment.txt')
myfile = open('~/fileToExperiment.txt','r')
myfile.readlines()
for line in myfile:
print line因此,我试图运行这个非常简单的python代码,但是它没有输出任何内容,也没有任何错误。filestoExperiment文本不是空的。
这里出什么问题了?有人能指出
发布于 2015-04-23 06:57:16
您没有将行存储在变量中。所以试试这个:
lines = myfile.readlines()
for line in lines:
print line发布于 2015-04-23 06:59:56
通过这样做,myfile.readlines()已经读取了整个文件。然后,我们尝试迭代您的文件对象,您已经在文件的末尾了。
更好的做法是:
with open('~/fileToExperiment.txt','r') as myfile:
for line in myfile:
print linemyfile.readlines()将把文件的全部内容存储在内存中。如果您不需要立即阅读整个内容,最好逐行阅读。
如果您确实需要整个内容,您可以使用
with open('~/fileToExperiment.txt','r') as myfile:
content = myfile.read() ## or content = myfile.readlines()还请注意with语句的使用,建议在处理文件时使用该语句(之后不需要关闭该文件)。
发布于 2015-04-23 07:16:25
您可以使用readline()或循环文件对象打印或读取文件中的行。
代码:
print myfile.readlines()产出:
['Hello World\n', 'Welcome to Python\n', 'End of line\n']代码:
myfile = open('newfile.txt', 'r')
for line in myfile:
print line产出:
Hello World
Welcome to Python
End of linehttps://stackoverflow.com/questions/29815887
复制相似问题