本文介绍如何在python中将一个看上去是list(例如’[‘a’,‘b’,‘c’]’,或者说是你爬取下来的文本显示是个[‘a’,‘b’,‘c’],但是,当你print(type())时,却输出了<class 'str'>
),这样的话,我们可以用下面两种方法将它转成一个真正的list类型:
由于我们初始的内容是一个str类型,因此在这里,我就以’[‘a’,‘b’,‘c’]'来描述了:
方式一:import json
import json
str = '['a','b','c']'
list = json.loads(str)
此时,可能会转成功,但也有可能会返回如下提示:
json.decoder.JSONDecodeError: Expecting value: line 1 column 2 (char 1)
出问题了怎么办!
所以在这里,有一种更安全的解决方法,就是ast。
方式二:import ast
import ast
str = '['a','b','c']'
list = ast.literal_eval(str)
print(type(list))
此时我们输出就会得到想要的结果:
<class 'list'>