使用 python2.7 打开文件并读取

Open file and read using python2.7

def read_text():
    quotes = oepn("C:\Python27\houston.txt")
    contents_of)file = quotes.read()
    print(contents_of_file)
    quotes.close()
read_text()

上面的代码在我的 shell 中运行良好,我想你也可以 运行。 ("C:\Python27\houston.txt") 是存放txt的地方,它告诉这个.... - 休斯顿,我们有一个问题。 (阿波罗 13 号)

-- 妈妈常说,生活就像一盒巧克力。你永远不知道你会得到什么。 (阿甘正传)

-- 你无法处理真相。 (几个好男人)

-- 我什么都信,什么都不信。 (黑暗中的一枪)

不管怎样,我只是在我的代码中给它一点不同,但它不起作用。

我不知道为什么;;;检查这个plz

quotes = open("C:\Python27\houston.txt")
contents_of_file = quotes.read()
print(quotes.read())
quotes.close()

看...我只将 contents_of_file 替换为 quotes.read() 但它不起作用。 你能告诉我为什么吗???为什么会这样?

当您调用quotes.read()时,它会读取整个文件并将光标放在文件末尾。所以,在第二次调用时,它从文件末尾开始读取,显然你什么也得不到。

您可以调用quotes.seek(0)再次将光标置于文件的开头。然后再次调用 quotes.read() 就可以了。

当您打印 contents_of_file 时,它可以工作,因为您已经将文件的全部内容作为该变量中的字符串。

但是,当您打印 quotes.read() 时,您基本上是在调用 quotes.read() 两次。所以,你什么也得不到。

所以,如果你真的想调用 read() 两次,请执行:

quotes = open("C:\Python27\houston.txt")
contents_of_file = quotes.read()
quotes.seek(0)
print(quotes.read())
quotes.close()