Python,将txt文件中的项添加到列表中

kid*_*dkd 17 python file-io

说我有一个空列表 myNames = []

如何打开每行上带有名称的文件并将每个名称读入列表?

喜欢:

>     names.txt
>     dave
>     jeff
>     ted
>     myNames = [dave,jeff,ted]
Run Code Online (Sandbox Code Playgroud)

Fel*_*ing 37

阅读文档:

with open('names.txt', 'r') as f:
    myNames = f.readlines()
Run Code Online (Sandbox Code Playgroud)

其他人已经提供了如何摆脱换行符的答案.

更新:

Fred Larson在他的评论中提供了一个很好的解决方案:

with open('names.txt', 'r') as f:
    myNames = [line.strip() for line in f]
Run Code Online (Sandbox Code Playgroud)

  • 如果我们想将`strip`合并到这个解决方案中,我可能会这样做:`myNames = [line.strip()for line in f]`. (3认同)
  • 将 `open(file, 'r')` 更改为 `open('names.txt', 'r')`。`file` 是一种内置类型,也不应该用作变量名...否则,很好的解决方案。 (2认同)

Rob*_*bus 8

f = open('file.txt','r')

for line in f:
    myNames.append(line.strip()) # We don't want newlines in our list, do we?
Run Code Online (Sandbox Code Playgroud)


dug*_*res 5

names=[line.strip() for line in open('names.txt')]
Run Code Online (Sandbox Code Playgroud)