myArray = []
textFile = open("file.txt")
lines = textFile.readlines()
for line in lines:
myArray.append(line.split(" "))
print (myArray)
这段代码输出
[['a\n'], ['b\n'], ['c\n'], ['d']]
我需要做什么才能让它输出
a, b, c, d
最佳答案
您正在向结果中添加一个列表
(split
返回一个列表)。此外,为拆分字符指定“空格”并不是最佳选择,因为它不会删除换行符、回车符、双空格,这些都会创建一个空元素。
您可以使用列表理解来做到这一点,不带参数地拆分项目(因此 \n
自然消失)
with open("file.txt") as lines:
myArray = [x for line in lines for x in line.split()]
(注意 with
block ,所以文件一退出就关闭,并且双循环将列表列表“扁平化”为单个列表:一行中可以处理多个元素)
然后,要么打印数组的表示
print (myArray)
得到:
['a', 'b', 'c', 'd']
或者您使用逗号+空格生成连接字符串
print(", ".join(myArray))
结果:
a, b, c, d
关于Python 从数组中删除方括号和字符串引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43642461/