Python:将文件的内容打印到终端

时间:2015-03-25 03:07:16

标签: python file terminal

我是Python的新手,正在阅读Python Tutorial

中的文件

所以,我制作了一个小程序来练习文件处理:

from sys import *

script , file_name = argv

print "Your file is : %s" %file_name

print "Opening the file..."
temp = open(file_name, 'r+')

print "Truncating the file "
temp.truncate()

print "Enter three lines."

line1 = raw_input("line 1: ")
line2 = raw_input("line 2: ")
line3 = raw_input("line 3: ")

print "Writing these to the file."

temp.write(line1)
temp.write("\n")
temp.write(line2)
temp.write("\n")
temp.write(line3)
temp.write("\n")


#for line in temp:
       #print line
#temp.read()

print "Closing it."
temp.close()

我的问题:

不知何故,我无法使用上面代码中的任何一个注释(#)语句将文件内容打印到终端。有人可以帮助我吗?

2 个答案:

答案 0 :(得分:3)

当你附加到文件时,python正在读取你的"光标"在文件中,它在最后。

您需要关闭文件并将其打开为" r",然后您就可以从头开始索引内容了。

答案 1 :(得分:2)

您可以添加一行

temp.seek(0,0)

for line in temp:
    print line
temp.read()

因此,再次将指针设置为文件的开头 有关seek()的详细信息,请参阅https://stackoverflow.com/a/11696554/1686094