问题:如何将字符串类型的列表转换成列表格式:
方法一:
a = "[1, 2, 3, 4, 5]"
print("原字符串是:{},类型是{}".format(a, type(a)))
# 去除左右的[]
a_del = a[1:-1]
print("去除[]之后的字符串是:{}".format(a_del))
print()
# 使用列表推导式去除“,”,并将每一个元素转换成int类型
a_result = [int(i) for i in a_del.split(",")]
print(type(a_result))
print("最终的结果是:{}".format(a_result))
控制台结果:
原字符串是:[1, 2, 3, 4, 5],类型是<class 'str'>
a的初始类型是:<class 'str'>
去除[]之后的字符串:1, 2, 3, 4, 5
<class 'list'>
最终的结果是:[1, 2, 3, 4, 5]
方法二:
a = "[1, 2, 3, 4, 5]"
print("a的初始类型是{}".format(type(a)))
print()
# 这里使用eval函数进行格式还原
a_result = eval(a)
print("此时a的类型为{}".format(type(a_result)))
print("最终的结果是:{}".format(a_result))
控制台结果:
a的初始类型是<class 'str'>
此时a的类型为<class 'list'>
最终的结果是:[1, 2, 3, 4, 5]