按char和int拆分列表

有什么方法可以拆分,例如:

a = 'a3c11d1c3d3'

output = ['a', '3', 'c', '11', 'd', '1', 'c', '3', 'd', '3']

我试过这样:

list(a)

然而,它给了我这样的结果:

output = ['a', '3', 'c', '1', '1', 'd', '1', 'c', '3', 'd', '3']

回答

您可以re.findall交替使用和匹配字母或数字组:

a = 'a3c11d1c3d3'
output = re.findall(r'[A-Za-z]+|[0-9]+', a)
print(output)

这打印:

['a', '3', 'c', '11', 'd', '1', 'c', '3', 'd', '3']


以上是按char和int拆分列表的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>