我的文本文件中有数据:2,58 1,23 0,146,58 4,2 1,3我想从我的文本文件中以这种格式写入列表中的数据:[[2, 58, 1, 23, 0, 14] [6, 58, 4, 2, 1, 3]]我试过这个:folder = open('text.txt', encoding = 'utf-8')data = [numbers.strip().replace(',',' ').split(' ') for numbers in folder]folder.closeprint(data)但我收到了这样的结果:[['2', '58', '1', '23', '0', '14']['6', '58', '4', '2', '1', '3']]如果我尝试int()在列表中的许多位置设置为数字,我会收到此错误:int() 参数必须是字符串、类似字节的对象或数字,而不是list所以我需要将此列表中的所有字符串从 更改为str,int你能帮我吗?
1 回答
冉冉说
TA贡献1877条经验 获得超1个赞
尝试使用map()
函数,它需要两个参数,其中一个是函数、条件等,第二个是可迭代对象,例如列表、集合等,因此在您的问题中将类似于将其转换map (int ,yourlist)
为列表后,list(map (int ,yourlist))
folder = open('text.txt', encoding = 'utf-8')
data = [list(map(int, numbers.strip().replace(',',' ').split(' '))) for numbers in folder]
folder.close()
print(data)
添加回答
举报
0/150
提交
取消