如何在Python列表中拆分项目



如何打开以下列表:

[['110T148A112', '24,0001100409'], 
['110T148A077','24,0001100316']]

进入

[['110T148A112', '24,000', '1100409'], 
['110T148A077','24,000', '1100316']]

实现这一点的最简洁的语法方法是什么?

谢谢你的帮助!!

您可以使用re.findall来处理字符串中逗号的位置和数量的更大可变性:

import re
d = [['110T148A112', '24,0001100409'], ['110T148A077', '24,0001100316']]
r = [[a, *re.findall('(?<=,d{3})d+$|^d+(?:,d{3})+', b)] for a, b in d]

输出:

[['110T148A112', '24,000', '1100409'], ['110T148A077', '24,000', '1100316']]

如果所有数据都是相同的格式,您可以使用字符串切片的列表理解:

lst = [['110T148A112', '24,0001100409'], 
['110T148A077','24,0001100316']]

res = [[l[0], l[1][:6], l[1][6:]] for l in lst]

输出:

[
['110T148A112', '24,000', '1100409'],
['110T148A077', '24,000', '1100316']
]

最新更新