ini文件 ini文件的特点 使用

目录

ini文件的特点

使用

获取

添加+修改

删除


[小妮]
password = 202cb962ac59075b964b07152d234b70
disk_size = 97065280

[大牛]
password = 202cb962ac59075b964b07152d234b70
disk_size = 5800

[小牛]
password = 202cb962ac59075b964b07152d234b70
disk_size = 58
ini文件
ini文件的特点
使用

【】里面的内容称为section,代表了一个小节,紧随其后的是section包含的option及其value。

使用

ini文件使用需要先创建对象,然后才可以读取

config = configparser.ConfigParser()
config.read(cls.user_dir, encoding='utf-8')  # encoding解决写入李四读出不是李四的问题
ini文件
ini文件的特点
使用

其中的这个encoding非常重要,如果不写,读出来的汉子就会出现乱码

同理,如果写也是需要这样做的

获取

        if config.has_section(item):
            if cls.generate_md5(sub_item) == config.get(item, 'password'):#如果MD5码一致
                print('欢迎您')
                return item
            else:
                print('密码错误')
                return False
ini文件
ini文件的特点
使用

has_section(section):判断是否含有section

get(section,option):获取某section的option值

添加+修改

config.add_section(name)  # 添加sectioin 即添加用户信息
        config.set(name, 'password', cls.generate_md5(password))
        config.set(name, 'disk_size', '1024')
        config.write(open(cls.user_dir, 'w', encoding='utf-8'))  # 未加encoding出现中文编码错误,
ini文件
ini文件的特点
使用

add_section(section):添加一个section

set(section,option,value):设置section的option值为value

write(open(file,mode,encoding='utf-8)):添加修改之后写入,encoding解决读写乱码问题,有人说mode为 ’a‘是追加,’w‘是覆盖再写,但是自己在用的时候’w'并没有覆盖,这个视情况而定吧

删除

conf.remove_option('rose', "password")

conf.remove_section('rose')
ini文件
ini文件的特点
使用

remove_option( section,option ):删除section的option项

remove_section( section ):删除整个section