0

例えば ​​:

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>

4

2 に答える 2

6

使用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]
于 2013-06-22T07:31:09.633 に答える
1

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]
于 2013-06-22T07:37:02.333 に答える