我已经从逗号分隔的文本文件中读取数据(原始格式为alpha_char,空间为1,2,3,4,5,6,7,空间为alpha_characters,为新行字符)并输出[['1,2,3,4,5,6,7'],['7,5,3,9,8,2,4'], etc]
(即一个字符串的列表),并希望将它们转换为[[1,2,3,4,5,6,7],[7,5,3,9,8,2,4], etc]
(即int列表)。因此,我会欣赏如何从文本文件中读取数据到int列表列表或如何将我拥有的字符串列表转换为int列表列表。我知道,我在这里很愚蠢。将字符串列表的列表转换为列表的列表int
0
A
回答
0
使用列表理解:
>>> with open('file.txt') as f:
... rows = [line.strip().split(',') for line in f]
...
>>> rows
[['1', '2', '3', '4', '5', '6', '7'], ['7', '5', '3', '9', '8', '2', '4']]
>>> nums = [list(map(int, row)) for row in rows]
>>> nums
[[1, 2, 3, 4, 5, 6, 7], [7, 5, 3, 9, 8, 2, 4]]
您还可以使用csv
module:
>>> import csv
>>>
>>> with open('file.txt') as f:
... reader = csv.reader(f)
... rows = [row for row in reader]
...
>>> rows
[['1', '2', '3', '4', '5', '6', '7'], ['7', '5', '3', '9', '8', '2', '4']]
+0
谢谢。我试图按照你的描述做很多事情,但是在错误的地方。我现在得到int base10的无效文字,所以我需要看看我已经做了什么。优秀的答案 – user1478335
0
要筛选号码和转换您的输出,你可以做到以下几点:
new_list = [ [ int(x) for x in convert_list.split(",") if x.isdigit() ] for sublist in oldlist for convert_list in sublist ]
如果你想知道你是否有输入这是不是一个数字,你可以省略.isdigit()
和使用尝试以下情况除外:
try:
[ [ int(x) for x in convert_list.split(",") ] for sublist in oldlist for convert_list in sublist ]
except ValueError:
print("bad input")
相关问题
- 1. 将列表中的字符串转换为int列表
- 2. 将字符串列表转换为int列表
- 3. 在SQL中将字符串列表转换为Int列表
- 4. 将字符串列表转换为字符串列表
- 5. 转换的字符串列表,列出字符串列表的
- 6. 转换列表<int>为分隔字符串列表
- 7. 斯卡拉 - 转换列表[字符串]元组列表[(Int,Int)]
- 8. 字符串到int转换的列表
- 9. 转换列表的列表转换为字符串列表 - Python的
- 10. 将列表(的对象)转换为列表(的字符串)
- 11. 如何将字符串列表转换为每个子列表中每个字符串的子列表列表?
- 12. 将字符串列表拆分为字符串列表列表
- 13. 将列表的Python列表转换为字符串
- 14. 将字符串的混合列表转换为整数列表
- 15. 如何将字符串列表转换为适当的列表?
- 16. 将字符串列表转换为java中的BigDecimal列表
- 17. 将字符串查找列表转换为Python中的列表
- 18. python:将文件转换为字符串列表的列表
- 19. 如何将字符串转换为整数列表的列表?
- 20. 字符串转换列表分为地图[字符串,列表]
- 21. 将sqlite int表转换为字符串,然后输入列表
- 22. 将int字符串的列表/元组转换为int
- 23. 将字符串转换为字列表?
- 24. 将列表转换为字典列表
- 25. 将char列表转换为int列表时将ML列表打字
- 26. 将字符串元组列表转换为元组列表
- 27. 如何将字符串列表转换为指令列表
- 28. 将unicode列表转换为列表字符串
- 29. 将整数列表转换为字符串列表
- 30. 将字符串列表(csv)转换为浮点列表
,如果它真的是一个逗号分隔的文件,你可以跳过手工的东西,'进口csv'和使用那? – KobeJohn