缓存的字符串列表转换为列表

时间:2017-03-17 11:43:30

标签: python regex caching

我已缓存包含单词的列表。我从缓存中下载列表作为字符串类型。有谁知道如何将它们再次转换为列表?

第一个列表为字符串

b"['cat', 'dog']"

我希望它在这种形式中

['cat','dog']

列表。

我已经尝试过了:

for lists in petlist:
    x = lists.decode("utf-8") 
    x = x.replace('[','')
    x = x.replace(']','')
    resources = b.split (',')

    if ',' in x:
        x = x.split(',')
    print(x)

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

您可以使用ast.literal_eval来评估包含有效Python文字的字符串。要处理数据,我们需要将bytes对象解码为字符串。我们可以使用默认的UTF-8编码。

from ast import literal_eval

s = b"['cat', 'dog']"
a = literal_eval(s.decode())
print(a, type(a))

<强>输出

['cat', 'dog'] <class 'list'>