如何在 For 循环中打印统一 Python 字典

How to Print Unified Python Dictionary Within For Loop

我尝试用 Config.ini 文件中的部分详细信息打印一个统一的 Python 字典,但不幸的是我得到单独的列表或只有最终字典.

我很想得到你们的帮助。

config_path = r"<Path>\Config.ini"

    dict = {}

    config = ConfigParser.ConfigParser()
    config.read(config_path)
    sections = config.sections()

    for section in sections:
        sql_query = config.get(section, 'SQL')
        limit = config.get(section, 'Limit')
        description = config.get(section, 'Description')
        section_name = section

        dict = {'Query': sql_query,
                'Limit': limit,
                'Description': description,
                'Section': section_name}

    print dict

你在每个循环中覆盖你的字典。

版本 1:字典列表

config = ConfigParser.ConfigParser()
config.read(config_path)
sections = config.sections()

config_sections = []
for section in sections:
    config_sections.append(
        {'Query': config.get(section, 'SQL'),
         'Limit': config.get(section, 'Limit'),
         'Description': config.get(section, 'Description'),
         'Section': section})

print config_sections

版本 2:带列表的字典

config = ConfigParser.ConfigParser()
config.read(config_path)
sections = config.sections()

config_dict = {}
for section in sections:
    for name, value in [('Query', config.get(section, 'SQL')),
                        ('Limit', config.get(section, 'Limit')),
                        ('Description', config.get(section, 'Description')),
                        ('Section', [section])]:
        config_dict.setdefault(name, []).append(value)
print config_dict