社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

Python中CSV字符串中的复杂JSON对象

Ankit Singh • 4 年前 • 1761 次点击  

在Python中解析csv字符串以提供API后,我想要以下JSON输出:

{
   "_records":[
      {
         "_fields":{
            "Account":"DSP2",
            "Code":"11"
         }
      },
      {
         "_fields":{
            "Account":"DSP1",
            "Code":"11"
         }
      }
   ]
}

由于我是python新手,经过一些研究,我能够编写以下代码,这是可行的,但我在最终输出中得到了一些额外的垃圾字符。

输出:

{'records': [{'{"fields": {"Account": "T671", "Code": "A7710"}}'}, 
enter code here
"T672", "Code": "A7799"}}'}]}

有人能帮你摆脱多余的{和}吗?

密码-

data = {'records': []}

data1 = {}

line_var = input_var_1.splitlines()
for line in line_var:
    records = line.split(',')
    data1.update({'fields': {'Account': records[0].strip(),'Code': records[1].strip()}})
    data2 = json.dumps(data1)
data["records"].append({data2})
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/129558
文章 [ 1 ]  |  最新文章 4 年前
Lukas Schmid
Reply   •   1 楼
Lukas Schmid    4 年前

额外的 {' 这是因为您将内部字典转储为一个字符串,并将其插入一个集合,然后将其放入列表中。

离开 data2 = json.dumps(data1) 取出并插入 data1 在你的 data["records"] .你会得到一个合适的字典列表,可以进一步使用

只有在需要将字典的文本表示形式写入文件等时才转储字典。

您也不需要初始化 数据1 字典,只需在每个循环中分配一个新的,并将其写入列表。默认情况下,它将覆盖引用