繁体   English   中英

如何将文本文件中的项目添加到列表中?

[英]How to add items from a text file into a list?

我已经尝试过:

with open('names.txt', 'r') as f:
    myNames = f.readlines() 

以及我在堆栈溢出中发现的多种其他方式,但它们并未完全满足我的需要。

我有一个文本文件,其中一行包含多个单词,例如:FLY JUMP RUN

我需要将它们放在列表中,但要使其成为列表中的单独元素,例如:

['FLY', 'JUMP', 'RUN']

除了使用我在堆栈溢出中找到的方法时,我得到: ['FLY JUMP RUN']

但是我需要将它们分开,因为我在列表上使用了random.choice方法。

如评论中所述,您应该尝试

myNames = None
with open('names.txt', 'r') as f:
    myNames = f.read().split()

假设文件是​​按照您所说的方式写的。 当然,这并不重要,因为split()的默认行为是使用空格字符和换行符等空格字符来拆分字符串,因此,如果文件包含

One Two
Three

然后

f.read().split()

仍会返回

["One", "Two", "Three"]

@Trey:回答您的评论。

readlines()会将文件的所有内容读入单个列表,而read()则将其作为单个字符串读取。

试试这个代码:

with open('names.txt', 'r') as f:
    myNames = f.read().split() #split by space

只要一行中的单词之间用空格隔开,这对于您期望的任何类型的数据都将起作用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM