python修改ini文件里面的参数值,python读取ini
本文主要详细介绍Python的ini配置文件。本文中的示例代码非常详细,具有一定的参考价值。感兴趣的朋友可以参考一下,希望能帮到你。
00-1010INI介绍关于configparserINI文件格式的读取配置文件概要。
目录
INI是英文“initialization”的缩写,用于对操作系统或特定程序进行初始化或设置参数。节(section)、
键(Key)和值(value)。windows系统中有很多INI文件,比如“System32.ini”和“Win.ini”。我相信你对它们很熟悉。大蟒
在中操作配置文件的模块是configparser,可以用来解析Windows上与INI文件结构相似的文件。
INI介绍
在python2中,这个模块被称为Configparser,但在python3中被改成了configparser。这个模块是一个解析器,用来解析ini配置文件。
它的功能是使用模块中的RawConfigParser()、ConfigParser()和SafeConfigParser()创建一个
对象使用对象的方法添加、删除和检查指定的配置文件。
这次用的python版本是3.8,编译器用的是pycharm。
关于configparser
INI配置文件组成:
Section:表示一个块,由方括号和方括号中的名称组成。section的范围是从当前方括号到下一个方括号,比如“DEFAULT”、“select”、“connect_mysql”。
大小写和空格检查:节中的名称按原样保存和获取,即不同节用不同的大小写或不同的空格;重复性检查:同一配置文件中的节名不能重复。Option:表示section中的配置项,是由key、separator、value组成的键值对,如“select”下的“broswer=Chrome”。
大小写检查:键不区分大小写。当它保存到文件中时,它会自动以小写保存密钥,但值是区分大小写的。通过空格检查:键获取值时,文件中键和值前后的空格会被自动去掉,然后进行匹配,即当文件保存为 broswer=Chrome 时,也可以使用 broswer 获取对应的值 Chrome ;跨多行检查:键不能跨行,但value可以跨行,只要第二行及后续行的缩进与第一行不同,直到下一个选项;像重复性检查:节,同一节下的键不允许重复;分隔符:可以是等号“=”或冒号“:”。注意:使用井号“#”或分号“;”需要注意的是,必须是一行的开头(前面可以有空格),用在一行中间的不会算作注释。
默认:这是一个特殊的节,在其他节的选项取不到值的时候会作为备用值,也可以理解为是根,其他节是它的子节。
但不是必须提供的。
读取配置文件
import osimport configparser
conf = configparser.ConfigParser() # 类的实例化
curpath = os.path.dirname(os.path.realpath(__file__))
path = os.path.join(curpath,read.ini)
conf.read(path,encoding="utf-8")
value = conf[select][url]
print("通过read方法取得的值为:",value)
value = conf.get(login,username)
print(通过get方法取得的值:,value)
value = conf.items(login) # 读取一个section中的所有数据,返回一个列表
print("通过items方法取得的值:",value)
value = conf.getint(connect_mysql,port) # 指定读取数据的类型
print("指定数据类型取出的值:",value)
section = conf.sections() # 读取配置文件中所有section
print(section)
运行结果
注意:配置文件注释有中文的,在python3中要加上参数encoding="utf-8",不然会报错。
conf.read(path,encoding="utf-8")
写入配置文件
import osimport configparser
conf = configparser.ConfigParser() # 类的实例化
curpath = os.path.dirname(os.path.realpath(__file__))
path = os.path.join(curpath,read.ini)
conf.add_section(login) # 添加一个新的section
conf.set(login,username,admin)
conf.set(login,password,123123) # 往配置文件写入数据
conf.write(open(path,a)) # 保存数据
运行以后查看配置文件,可以看到新的section已经写入到文件中。
write写入常用的两种方式,第一种是删除原文件内容,重新写入:w
conf.write(open(path,w))
第二种是在原文件基础上继续写入内容,追加模式写入:a
conf.write(open(path,a))
总结
本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注盛行IT软件开发工作室的更多内容!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。