在python中添加不带引号的字符串到字典

2024-06-25 23:28:17 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用json数据来发布到API。 我已经按预期的格式格式化了数据。然而,当我把它放在一起时,我在变量周围得到了一个意想不到的单引号。 我的字典如下。在

                    data = {  
           "Items": [
           out2
           ],
           "TenantToken": "user",                 
           "UserToken": "pass"                    
                }

“out2”中的数据看起来像。在

^{pr2}$

但是当我发布数据时

{'Items': ['{"Code": "805619531972", "LocationCode": "OSWATV-01", "Quantity": 126, "WarehouseId": 6884}, {"Code": "805619531989", "LocationCode": "OSWATV-01", "Quantity": 142, "WarehouseId": 6884}'], 'TenantToken': 'user', 'UserToken': 'pass'}

加上单引号

['{ }'] 

而不是

[{ }]

这是我在这里的第一篇文章,所以如果我遗漏了什么,我很抱歉。 谢谢!在

编辑:out2目前是一个字符串创建使用熊猫和导出到.txt(它的保存,以备将来使用,因为我将循环多个文件) 我用

text_file = open('file.txt', "r")
                lines = text_file.readlines()

我们的目标是生成一个json来发送,它看起来像这样。在

   {
  "Items": [
    {
      "Code": "String",
      "LocationCode": "String",
      "Quantity": 0,
      "WarehouseId": 0
    },
    {
      "Code": "String",
      "LocationCode": "String",
      "Quantity": 0,
      "WarehouseId": 0
    }
  ],
  "TenantToken": "String",
  "UserToken": "String"
}

Tags: 数据jsonstringcodeitemspassquantityfile
1条回答
网友
1楼 · 发布于 2024-06-25 23:28:17

使用ast将字符串转换为字典。然后删除“Items”后面的额外列表:最后使用json.dumps文件生成有效的json输出。在

import json
import ast

out2 = '{"Code": "123456789", "LocationCode": "OTV-01", "Quantity": 69, "WarehouseId": 6884}, {"Code": "123456789", "LocationCode": "OTV-01", "Quantity": 123, "WarehouseId": 6884}'

data = {
    "Items":
        ast.literal_eval(out2),
    "TenantToken": "user",
    "UserToken": "pass"
}

print(json.dumps(data))

输出

^{pr2}$

相关问题 更多 >