Python3嵌套词典打印

时间:2020-02-07 18:26:27

标签: python-3.x dictionary discord.py-rewrite

好吧,所以我一生都无法找出使该摘要起作用的热门方法。我的想法是,由于我们正在使用关卡中的关卡,因此我们已经在第一个词典中,因此应该是关卡[第二个词典]

我当前的输出是未定义的错误名称。我想要做的是能够打印每个字典中的名称,提升值等。最终,我将这些查询成语句。例如print(level [colour])应该在for语句中打印当前级别的颜色,或者print(levels [Admin] [colour])应该输出admin的颜色。

levels={"Admin":{"name":"Admin","hoist":"1","colour":"red"},"Moderator":{"name":"Moderator","hoist":"1","colour":"yellow"},"Henchman":{"name":"Henchman","hoist":"1","colour":"yellow"},"Member":{"name":"Member","hoist":"0","colour":"green"},"Verify":{"name":"Verify","hoist":"1","colour":"white"},"Leach":{"name":"Leach","hoist":"1","colour":"pink"}}



for level in levels:
    print(level[name])

感谢您的帮助。

这是我在其中使用的语法。

@client.command()
async def roles(ctx):
    guild=ctx.guild
    for level in levels.keys():
        name=levels[level]['name']
        hoist=levels[level]['hoist']
        colour=levels[level]['colour']
        await guild.create_role(name=name,hoist=hoist)

1 个答案:

答案 0 :(得分:1)

您的键都是字符串,因此您需要用引号将name括起来。

for level in levels:
    print(levels[level]['name'])

print(levels['Admin']['colour'])

输出:

Admin
Moderator
Henchman
Member
Verify
Leach

red