更改拆分方法以从文件而不是字符串读取

时间:2019-06-16 13:42:23

标签: python arrays split

我正在尝试转换以下方法,以允许其从文本文件读取而不是读取字符串列表。

这是我在网上找到的方法,对我来说很好用。

str = """
test line1
test line2
test line3
"""    
list = []
for line in str.split("\n"):
    if not line.strip():
        continue
    list.append(line.lstrip())
print (list)

尽管不断出现此错误,我还是试图修改该方法以允许它从文本文件读取:

  

(AttributeError:“ _ io.TextIOWrapper”对象没有属性“ split”)

这就是我所做的方法。

file = open("test.txt","r")
list = []
for line in file.split("\n"):
    if not line.strip():
        continue
    list.append(line.lstrip())
print (list)

2 个答案:

答案 0 :(得分:2)

file不是str。您可以使用file.read()获取内部数据。

所以,您可以这样做。


file = open("test.txt", "r")
lst = []
for line in file.read().splitlines():
    if line.strip():
            lst.append(line.lstrip())
print (lst)

答案 1 :(得分:2)

您可以只做for line in file: