Как мне использовать метод append() с Json?

Так вот, у меня должен быть Json такого типа ->

{
    "guild_id": [ #здесь id гильдии первой
        {
            "role_name": "name",
            "role_id": "id"
        },
        {
            "role_name": "name",
            "role_id": "id"
        }
    ],

    "guild_id1": [ #здесь id гильдии второй
        {
            "role_name": "name",
            "role_id": "id"
        },
        {
            "role_name": "name",
            "role_id": "id"
        }
    ]
}

У гильдий есть список ролей-модеров которые добавляются с помощью команды. У ролей в свою очередь есть имя и айдишник. Так вот я не понимаю, как создать такой Json с помощью Python.


Ответы (1 шт):

Автор решения: P1n_C0der

Делается это легко, но без проверки не обойтись:

rolejs = load_json('jsons\moderRoles.json') #load_json Это сторонняя функция

if str(guild_id) not in rolejs: 
    rolejs[str(guild_id)] = [{'role_id': 'id', 'role_name': 'name'}] #обратите внимание на квадратные скобки. Здесь они присутствуют ибо мы создаем список
else:
    rolejs[str(guild_id)].append({'role_id': 'id', 'role_name': 'name'}) #в будучи созданный список добавляем новый элемент. Квадратных скобок нет

write_json('jsons\moderRoles.json', rolejs)

guild_id, id и name - их значение присваивается "за кадром"

→ Ссылка