微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Python-configparser if语句并编辑.ini文件中的数据

如何解决Python-configparser if语句并编辑.ini文件中的数据

如果数据等于示例,如何使用if语句编辑数据?

if displayMenu == "1":
        config = ConfigParser()
        if config["SETTINGS"] == {"Tutorial": "True"}:
            config["SETTINGS"] = {
                "Tutorial": "False"
                }
        if config["SETTINGS"] == {"Tutorial": "False"}:
            config["SETTINGS"] = {
                "Tutorial": "True"
                }

我想做的是,在“设置”选项卡中,值tutorial等于true,然后更改为false,反之亦然。这该怎么做?我使用这个错误

Traceback (most recent call last):
  File "C:\Users\Stagiair\Desktop\Immortal Conquest\Main\Settings.py",line 80,in <module>
    displayMenu()
  File "C:\Users\Stagiair\Desktop\Immortal Conquest\Main\Settings.py",line 27,in displayMenu
    print("[1] Tutorial  = " + config['SETTINGS']['Tutorial'])
  File "C:\Users\Stagiair\AppData\Local\Programs\Python\python39\lib\configparser.py",line 960,in __getitem__
    raise KeyError(key)
KeyError: 'SETTINGS'

我用于创建.ini文件代码

#Makes a Settingsfile
def CreateSettingsFile():
    try:
        import os,sys,time,pickle,colorama,threading,ctypes
        from configparser import ConfigParser
    except Exception as e:
        print("Some modules are mssing! Install them and try again! {}".format(e))
    os.system("cls")
    #Get the configparser object
    config = ConfigParser()

    #Assume we need 2 sections in the config file,let's call them SETTINGS and USERINFO
    config["SETTINGS"] = {
        "Music": "True","Tutorial": "True","GameSaves": "True"
    }
    config["USERINFO"] = {
        "username": "Not Set"
    }
    config["GAMEITEMS"] = {
        "EXP": "None","Items" : "None","Kills" : "None","Saved" : "None"
    }
    #Write the above sections to config.ini file
    with open('GameSaves/config.ini','w') as conf:
        config.write(conf)
    os.system("cls")

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。