python – 将元组的字符串转换为元组

如果我有一个看起来像元组的字符串,我怎么能把它变成一个元组?

s = '(((3,),(4,2),(2,)),((1,),(2,4),(2,)))'

我想把它变成一个包含其他元组的元组.

t = tuple((((3,),(4,2),(2,)),((1,),(2,4),(2,))))

不起作用,因为它甚至使(作为元组中的项目).

解决方法:

你需要使用ast.literal_eval

from ast import literal_eval
s = '(((3,),(4,2),(2,)),((1,),(2,4),(2,)))'

t = literal_eval(s)
print(t)
print(type(t))
(((3,), (4, 2), (2,)), ((1,), (2, 4), (2,)))
<class 'tuple'>
上一篇:1029: [JSOI2007]建筑抢修 - BZOJ


下一篇:python – 从列表中的元组中剥离字符