Skip to main content
 首页 » 编程设计

python之如何将此字符串列表拆分为整数列表列表

2025年05月04日20yxwkf

我有一个字符串列表,就像:

['25 32 49 50 61 72 78 41\n', 
 '41 51 69 72 33 81 24 66\n'] 

我想将这个字符串列表转换为一个整数列表列表。所以我的 list 是:

[[25, 32, 49, 50, 61, 72, 78, 41], [41, 51, 69, 72, 33, 81, 24, 66]] 

我一直在想这个问题,但找不到解决方案。 顺便说一句,我在上面给出的字符串列表是使用

填充的
open("file", "r").readlines() 

请您参考如下方法:

使用split()将字符串拆分为列表,然后使用int()将它们转换为整数。

使用 map():

In [10]: lis=['25 32 49 50 61 72 78 41\n', 
   ....:  '41 51 69 72 33 81 24 66\n'] 
 
In [11]: [map(int,x.split()) for x in lis] 
Out[11]: [[25, 32, 49, 50, 61, 72, 78, 41], [41, 51, 69, 72, 33, 81, 24, 66]] 

或使用列表理解:

In [14]: [[int(y) for y in x.split()] for x in lis] 
Out[14]: [[25, 32, 49, 50, 61, 72, 78, 41], [41, 51, 69, 72, 33, 81, 24, 66]] 

你也可以直接从你的文件中创建这个列表,不需要readlines():

with open("file") as f: 
    lis=[map(int,line.split()) for line in f] 
    print lis 
... 
[[25, 32, 49, 50, 61, 72, 78, 41], [41, 51, 69, 72, 33, 81, 24, 66]]