2017-08-16 105 views
2

我想逐行阅读一个txt文件并保存到列表中,我的python版本是2.5,但是我得到的语法错误,你能帮我吗? 我的代码如下:阅读python中的txt文件2.5

with open("test.txt") as f: 
    content = f.read().splitlines() 
+0

http://faculty.salina.k-state.edu/tim/NPstudy_guide/python/pyio.html – kd88

+0

通过[7.2。阅读和编写文件](https://docs.python.org/3/tutorial/inputoutput.html#reading-and-writing-files),练习示例。它应该有所帮助。 – wwii

回答

4

上下文管理器在Python 2.6(PEP 343)进行了介绍。在Python 2.5中,你必须做的:

f = open("test.txt") 
content = f.read().splitlines() 
f.close() 

的主要缺点是,你必须要记住关闭文件

另一种可能(甚至更好)是使用__future__(使它的第一线你的脚本):

from __future__ import with_statement 

然后你可以安心在Python中使用with 2.5

+1

'with'是Python 2.6的正式组成部分,您必须在Python 2.5中使用contextlib之前从\ _ \ _ future \ _ \ _中导入它。 – digitaLink

+0

@digitaLink这是真的!感谢您指出了这一点。编辑。 –