我有一个名为 new_data.txt 的 .txt 文档。本文档中的所有数据均以点分隔。我想在python中打开我的文件,将其拆分并放入列表中。
output = open('new_data.txt', 'a')
output_list = output.strip().split('.')
但我有一个错误:
AttributeError: 'file' object has no attribute 'strip'
我该如何解决这个问题?
注意:我的程序在Python 2上
答案 0 :(得分:16)
首先,您要以读取模式打开文件(将其置于追加模式)
然后你想要read()
文件:
output = open('new_data.txt', 'r') # See the r
output_list = output.read().strip().split('.')
这将获得文件的全部内容。
目前您正在处理文件对象(因此出错)。
更新:似乎这个问题从最初的时间开始就收到了很多观点。打开文件时,with ... as ...
结构应该像这样使用:
with open('new_data.txt', 'r') as output:
output_list = output.read().strip().split('.')
这样做的好处是不需要显式关闭文件,如果控制序列中出现错误,python会自动关闭文件(而不是文件在出错后保持打开状态)