Python3 嵌套字典打印



好的,所以我一生都无法弄清楚让这个片段工作。我的想法是,由于我们正在处理级别,我们已经在第一本字典中,所以它应该是level[第二字典]

我当前的输出是未定义的错误名称。我想做的是能够打印每个字典中的名称、提升值等。最终,我将把这些查询到语句中。例如 print(level[color]( 应该在 for 语句中打印当前级别的颜色,或者 print(levels[Admin][color]( 应该输出 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)

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

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

输出:

Admin
Moderator
Henchman
Member
Verify
Leach
red

最新更新