Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在JSON文件中获取此结构的好方法是什么_Json_Python 3.x - Fatal编程技术网

在JSON文件中获取此结构的好方法是什么

在JSON文件中获取此结构的好方法是什么,json,python-3.x,Json,Python 3.x,我想在JSON文件中对这些数据进行结构化,这对于以后的使用似乎是最实用的。但我正在努力如何真正做到这一点。你能帮我指点一下方向,或者举一个与这个案例相关的例子吗 player_a: match_id: winner: name: player_x a: 2 b: 120 c: 30 d: 2.1

我想在JSON文件中对这些数据进行结构化,这对于以后的使用似乎是最实用的。但我正在努力如何真正做到这一点。你能帮我指点一下方向,或者举一个与这个案例相关的例子吗

player_a:
    match_id:
            winner:
                name: player_x
                a: 2
                b: 120
                c:  30
                d: 2.1

            losers:
                name: player_q
                a: 1
                b: 112
                c:  40
                d: 1.1

                name: player_v
                a: 1
                b: 132
                c:  40
                d: 1.1

                name: player_r
                a: 1
                b: 112
                c:  40
                d: 1.1

                name: player_e
                a: 1
                b: 132
                c:  40
                d: 1.1

    match_id:
            winner:
                name: player_w
                a: 2
                b: 120
                c:  30
                d: 2.1

            losers:
                name: player_q
                a: 1
                b: 112
                c:  40
                d: 1.1
player_b:
    match_id: etc etc
    match_id: etc etc

player_c: etc
稍后我想迭代这个文件。这我很熟悉,但是像示例中那样构建文件,我不知道

更新: 这是我所理解的,但就我的例子而言,我不知道如何继续

import json

data = {}
data['people'] = []
data['people'].append({
'name': 'Scott',
'website': 'stackabuse.com',
'from': 'Nebraska'

with open('data.txt', 'w') as outfile:
    json.dump(data, outfile)

你当然可以这样做:

data={}
数据[“玩家a”]={“匹配id1”:{},“匹配id2”:{}
数据[“玩家”][“比赛id1”][“赢家”]={
“姓名”:“玩家x”,
“a”:2,“b”:120,“c”:30,“d”:2.1
}
#对其他比赛ID和球员重复此操作。。。

然后像以前一样将数据转储到JSON文件中。您可能希望将
“losers”
键与词典列表相关联,而不是像我对“winner”键所做的那样将单个词典关联起来。

哪一部分容易混淆?只需浏览并开始添加括号,将其转换为JSON格式。数据来自哪里?你有python字典、类或其他东西吗?或者您只是想手动创建文件?我注意到您有重复的
match\u id
实例。
match\u id
只是不同标签的替身,还是您想在实际的JSON文件中使用
match\u id
?@jjramsey match\u id这些将是唯一的字符串,因此不使用实际的单词。@PaulRenauld这也是打开的。我从几个对公共API的API调用中获取数据。所以我还没有和任何事情联系在一起。我还没有字典,也没有课。从单独的API调用中提取一些数据,并希望将所有数据组合成这样。是的,这对我来说似乎非常有效。关于“失败者”的词典列表,我也会尽量做到这一点。谢谢你的解决方案!