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
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
with open("file.txt") as lines:
myArray = [x for line in lines for x in line.split()]
with
块,因此在退出时立即关闭文件,并且双重循环将列表的列表“展平”为单个列表:可以处理一行中的多个元素)print (myArray)
获取:
['a', 'b', 'c', 'd']
print(", ".join(myArray))
结果:
a, b, c, d
myArray = [[v.strip() for v in x] for x in myArray]
这将删除所有格式字符。
如果您不想让每个字符都在自己的数组中,那么可以这样做:
myArray = [v[0] for v in myArray]
要打印,那么就使用 'print(', '.join(myArray))
看起来你应该使用strip()(修剪空格)而不是split()(生成字符串块列表)。
myArray.append(line.strip())
然后 'print(myArray)' 将生成:
['a', 'b', 'c', 'd']
要打印出'a, b, c, d',你可以使用join()函数:
print(', '.join(myArray))
import re
arr = [['a\n'], ['b\n'], ['c\n'], ['d']]
arr = ( ", ".join( repr(e) for e in arr ))
arr = arr.replace('\\n', '')
new = re.sub(r'[^a-zA-Z0-9,]+', '', arr)
print(new)
结果:
a,b,c,d