a="[['212131', '21331', '21323', '113312'], ['21212', '1212', '12211', '212112'], ['1234', '435678', '766576', '7'], ['1222', '2121', '21221', '213131']]"
我有这个字符串类型列表。如何转换为普通列表,以便它将提供a[0][0]='212131'
。
答案 0 :(得分:0)
你的问题的标题暗示你最终想要整数。
因此,将计算字符串的ast.literal_eval
组合成一个字符串列表列表,其中包含列表解析,将字符串转换为整数,并将列表列表重建为整数列表。
import ast
a = "[['212131', '21331', '21323', '113312'], ['21212', '1212', '12211', '212112'], ['1234', '435678', '766576', '7'], ['1222', '2121', '21221', '213131']]"
# mutate a into the proper type
a = [[int(x) for x in sl] for sl in ast.literal_eval(a)]
print(a)
结果:
[[212131, 21331, 21323, 113312], [21212, 1212, 12211, 212112], [1234, 435678, 766576, 7], [1222, 2121, 21221, 213131]]
和(如预期的那样):
>>> a[0][0]
212131
请注意,如果您希望将a[0][0]='212131'
作为字符串,那么a = ast.literal_eval(a)
就足够了,并且没有太多可以回答......