我有一个带有名称列表的记事本文本文件
例如
['raymond james', 'warren buffet', 'ernest giles', 'william blair']
我如何将其变成一个列表,其中每个列表项都是每一行的全名。
所以我的清单是:
Android.Arch.Lifecycle
答案 0 :(得分:5)
只需以读取模式打开文件,然后使用readlines()
方法:
with open('your_file.txt', 'r') as myfile:
lines = myfile.readlines()
您可以使用简单的列表理解来删除换行符(\n
):
lines = [i.strip() for i in lines]
答案 1 :(得分:2)
我建议您使用strip()
来避免换行符和尾随空格。在这种情况下,不需要readlines()
:
with open('file.txt', 'r') as f:
lines = [line.strip() for line in f]
print(lines) # ['raymond james', 'warren buffet', 'ernest giles', 'william blair']
或者,如果您不喜欢列表理解,还可以如下使用map()
:
with open('file.txt', 'r') as f:
lines = list(map(str.strip,f))
print(lines)
答案 2 :(得分:2)
在Python中,以文本形式打开的文件可在其行上进行迭代。因此,最简单的解决方案是
with open('myfile.txt') as f:
my_list = list(f)
这比使用readlines
更好,因为迭代器会删除换行符,而readlines
不会删除换行符。
如果您想从每行中去除其他空格(如其他答案所示),则可以使用一种理解:
with open('myfile.txt') as f:
my_list = [line.strip() for line in f]
或map
:
with open('myfile.txt') as f:
my_list = list(map(str.strip, f))