我正在尝试让Python打印文件的内容:
log = open("/path/to/my/file.txt", "r")
print str(log)
给我输出:
<open file '/path/to/my/file.txt', mode 'r' at 0x7fd37f969390>
而不是打印文件。该文件中只有一个短文本字符串,当我执行相反的操作时(将我的Python脚本中的user_input写入同一个文件)它可以正常工作。
编辑:我看到Python认为我在问它,我只是想知道从文件内部打印内容的命令是什么。
答案 0 :(得分:9)
最好用“with”来自动关闭描述符。这适用于2.7和python 3。
with open('/path/to/my/file.txt', 'r') as f:
print(f.read())
答案 1 :(得分:8)
open
为您提供了一个不会立即自动加载整个文件的迭代器。它逐行迭代,因此您可以像这样编写一个循环:
for line in log:
print(line)
如果您只想将文件内容打印到屏幕,则可以使用print(log.read())
答案 2 :(得分:2)
open()
实际上会打开file object供您阅读。如果您打算将文件的完整内容读入日志变量,那么您应该使用read()
log = open("/path/to/my/file.txt", "r").read()
print log
这将打印出文件的内容。
答案 3 :(得分:0)
file_o=open("/path/to/my/file.txt") //creates an object file_o to access the file
content=file_o.read() //file is read using the created object
print(content) //print-out the contents of file
file_o.close()