首页 > 解决方案 > 循环遍历python中的json键

问题描述

所以......我正在制作一个不和谐的网络钩子调用程序,并且我正在让 JSON 阅读器知道它必须发送哪些网络钩子。我想打印它将发送的消息并且发生了以下情况:它没有给我输出。我的代码:

主要.py:

import json
from collections import Counter
#import requests

with open('data.json') as json_file:
    data = json.load(json_file)
    for hallo in range(0, len(data) - 1):
        stringSmall = "<:" + data[str(hallo + 1)]['emojiName'] + ":" + data[str(hallo + 1)]['serverID'] + ">"
        print(stringSmall)

数据.json:

{
    "1": {
        "webhookURL": "some.webhook.url/path/to/handler",
        "emojiName": "7777",
        "emojiID": "8888",
        "serverID": "999999999999999999"
    }
}

我想打印以下组成:

"<:" + {多个表情符号名称之一(我有更多显示的上图)} + ":" + {多个服务器 ID 之一)+ ">"

我想要的输出应该如下所示: <:7777:999999999999999999> 但我根本没有输出

请帮忙,我正在努力思考发生了什么

标签: pythonjson

解决方案


用于.items()遍历字典:

import json
with open('data.json') as json_file:
    data = json.load(json_file)

    for k, values in data.items():
        # k == 1
        stringSmall = "<:" + values['emojiName'] + ":" + values['serverID'] + ">"
        print(stringSmall)

出去:

<:7777:999999999999999999>

推荐阅读