Python INI文件如何将1个变量的内容分成3个独立的变量

时间:2017-08-04 17:21:05

标签: python user-interface dictionary ini

我正在开发一个从INI文件中读取的GUI,用于配置一些屏幕按钮。我试图分离从INI文件返回的一些数据。基本上我有一个按钮" type"这是4个选项之一,根据类型,GUI将为按钮分配一个功能。 (我正在使用INI文件,以便将来轻松更改按钮功能)

我要做的是将按钮分类为类型组,然后将该组中的哪些按钮标识为自己的变量。

以下是按钮类型的INI文件:

[Button1]
type = Run Mission

[Button2]
type = Set Register

[Button3]
type = Set Register

[Button4]
type = Set Register

[Button5]
type = Indicator

[Button6]
type = Set Register

[Button7]
type = Data

[Button8]
type = Data

[Button9]
type = Data

这是我试图用来提取这些数据的代码。我使用configparser来读取INI文件。问题是当我print k测试进来的数据时,会打印type_7, type_9, type_8并且如果可能的话;我需要将它们各自放在自己的变量中或以某种方式分离。我没有包含所有的GUI代码以保持帖子简短,但如果需要更多代码,请告诉我。我是python的新手,看过很多类似的帖子,但似乎无法找到专门做这个的方法。

type_dict = {}

    type_dict['type_1'] = config.get("Button1", "type")
    type_dict['type_2'] = config.get("Button2", "type")
    type_dict['type_3'] = config.get("Button3", "type")
    type_dict['type_4'] = config.get("Button4", "type")
    type_dict['type_5'] = config.get("Button5", "type")
    type_dict['type_6'] = config.get("Button6", "type")
    type_dict['type_7'] = config.get("Button7", "type")
    type_dict['type_8'] = config.get("Button8", "type")
    type_dict['type_9'] = config.get("Button9", "type")

    print type_dict

    """for k, v in type_dict.items():
        if v == "Run Mission":
            print k

    for k, v in type_dict.items():
        if v == "Set Register":
            print k

    for k, v in type_dict.items():
        if v == "Indicator":
            print k"""

    for k, v in type_dict.items():
        if v == "Data":
            print k

非常感谢任何帮助。提前谢谢!

1 个答案:

答案 0 :(得分:1)

这将为您提供一个以“数据”作为其值的键列表。这能满足您的需求吗?

data_buttons = [k for k, v in type_dict.items() if v == "Data"]