['2,3', '1,2,3', '4,5,6', '2,3', '10,11', '13,14,15', 'END']
而不是现在这个数组的外观,我需要它看起来像这样:
[2,3,1,2,3,4,5,6,2,3,等...]
我也无法弄明白,或者即使有办法,也可以将字符串数组分开,这样它们就不是字符串而是整数。
这是我的read方法以及它如何分隔我的txt文件
def read_file():
with open('extra.txt') as fp:#read file
lines = fp.read().split();
fp.close(); #close file
return lines; #return lines to main function
答案 0 :(得分:0)
您可以使用list comprehension,使用str.split()
一次性使用逗号和int()
分隔字符串以转换为整数:
In [1]: l = ['2,3', '1,2,3', '4,5,6', '2,3', '10,11', '13,14,15', 'END']
In [2]: [int(number) for item in l[:-1] for number in item.split(",")]
Out[2]: [2, 3, 1, 2, 3, 4, 5, 6, 2, 3, 10, 11, 13, 14, 15]
l[:-1]
跳过上一个END
元素。
此外,这是一种围绕嵌套列表推导阅读和包装头的方法:
答案 1 :(得分:0)
如果 old_list 是包含上述字符串的列表,
old_list.remove('END')
new_list = []
for i in old_list:
sp = i.split(',')
for j in sp:
new_list.append(j)