Python 将字符串转换为列表
可能重复:Python 将字符串转换为列表,python,string,list,python-2.5,Python,String,List,Python 2.5,可能重复: 嗨 我有一个以下格式的字符串: >>> x="(174,185)" >>> x '(174,185)' 如何将此字符串转换为列表,以便将索引0作为174访问,将索引1作为185访问?我正在使用Python2.5和WinXP。 我试过几种方法,但效果不好。谢谢你的建议。tq >>> y=x.split(",") >>> y ['(174', '185)'] >>> y[0] '(174' &g
嗨 我有一个以下格式的字符串:
>>> x="(174,185)"
>>> x
'(174,185)'
如何将此字符串转换为列表,以便将索引0作为174访问,将索引1作为185访问?我正在使用Python2.5和WinXP。
我试过几种方法,但效果不好。谢谢你的建议。tq
>>> y=x.split(",")
>>> y
['(174', '185)']
>>> y[0]
'(174'
>>> [int(x) for x in x.split(",")]
Traceback (most recent call last):
File "<pyshell#18>", line 1, in <module>
[int(x) for x in x.split(",")]
ValueError: invalid literal for int() with base 10: '(174'
>>>
y=x.split(“,”)
>>>y
['(174', '185)']
>>>y[0]
'(174'
>>>[int(x)表示x.split中的x(“,”)]
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
[int(x)表示x.split中的x(“,”)]
ValueError:以10为基数的int()的文本无效:'(174'
>>>
您可以试试这个
y=x[1:-1].split(",")
在分开之前把帕伦剥掉
>>> x="(174,185)"
>>> map(int, x[1:-1].split(','))
[174, 185]
如果有python2.6,也可以使用literal_eval+
>>> from ast import literal_eval
>>> literal_eval(x)
(174, 185)
>>>
你可以试试这个
y=x[1:-1].split(",")
在分开之前把帕伦剥掉
>>> x="(174,185)"
>>> map(int, x[1:-1].split(','))
[174, 185]
如果有python2.6,也可以使用literal_eval+
>>> from ast import literal_eval
>>> literal_eval(x)
(174, 185)
>>>
tq,这很好!一旦进入列表,就可以访问索引。顺便说一句,x[1:-1]是什么意思?tq是的,我明白你的意思,你只需要取括号中的int值并用逗号分隔。太好了。:)tq,这很好!一旦进入列表,就可以访问索引。顺便说一句,x[1:-1]是什么意思是吗?是的,我明白你的意思,你只需要取括号中的int值,然后用逗号分开。太好了。:)