如何使用 python 将字符串转换为数组?

How to convert a string to an array with python?

如何使用 python 将字符串转换为数组?

我需要将项目的值转换为数组。

我尝试使用 json.loads,但它不起作用。

只有 ITEMS 键的值在字符串中,我需要转换为数组的正是这个值

我做错了什么?

谢谢。

"metadata": {
        "deleted": "false",
        "low_manual": "false",
        "canceled": "false",
        "items": "[{'descricao': 'ITEM1', 'amount': '200'}, {'amount': '3000', 'descricao': 'ITEm2'}]"
    }

您正在尝试做的事情叫做 "deserialization"。反序列化是从 JSON 文本转换为对象(在本例中为 Python-Object)的过程。序列化和反序列化最好用库来完成。

反序列化Python工具:

JSON Pickle Library

您要做的是安装库并将其导入到您的项目中。然后,您想使用类似于以下的命令对 JSON 文本进行反序列化:

obj = jsonpickle.decode(JSON text)

"obj" 现在是具有 "deleted"、"low_manual"、"canceled" 和 "items" 属性的对象。我相信 "items" 将包含一个对象数组,您可以通过父对象 "obj".

访问这些对象

已解决。

var = "metadata": {
        "deleted": "false",
        "low_manual": "false",
        "canceled": "false",
        "items": "[{'descricao': 'ITEM1', 'amount': '200'}, {'amount': '3000', 'descricao': 'ITEm2'}]"
    }

from ast import literal_eval

stringC = literal_eval(var['metadata']['items'])

stringC[0]