例如 :
je = ("3,5&6,7")
我想要的结果是 [3,5,6,7]
到目前为止我已经尝试过:
je = ("3,5&6,7")
jean = je.split(",")
j = str(jean)
De = j.split("&")
print De
但我的结果是 ["['3', '5", "6', '7']"]
</p>
使用regex
:
In [3]: import re
In [4]: strs = "3,5&6,7"
#map
In [5]: map(int, re.findall(r'\d+',strs))
Out[5]: [3, 5, 6, 7]
#LC
In [6]: [int(x) for x in re.findall(r'\d+',strs)]
Out[6]: [3, 5, 6, 7]
您可以replace()
使用ast.literal_eval
:
>>> import ast
>>> je = ("3,5&6,7")
>>> ast.literal_eval(je.replace('&', ','))
(3, 5, 6, 7)
或者如果你真的需要一个列表:
>>> ast.literal_eval('['+je.replace('&', ',')+']')
[3, 5, 6, 7]