本文目录一览:
如何使用Python3读写INI配置文件
python读取ini配置需要用到configparser包,所以要先加载它。
import
configparser
之后我们需要载入配置文件。
config=configparser.configparser()
#ipconfig.ini可以是一个不存在的文件,意味着准备新建配置文件。
config.read("ipconfig.ini")
python3 如何创建一个.ini的配置文件。
1、说明:
python3使用configparser模块来处理ini配置文件。
2、代码示例:
需要生成conf.ini配置文件如下:
[config]
v1
=
100
v2
=
abc
v3
=
true
v4
=
123.45
python代码:
import
configparser
#
加载现有配置文件
conf
=
configparser.ConfigParser()
#
写入配置文件
conf.add_section('config')
#添加section
#
添加值
conf.set('config',
'v1',
'100')
conf.set('config',
'v2',
'abc')
conf.set('config',
'v3',
'true')
conf.set('config',
'v4',
'123.45')
#
写入文件
with
open('conf.ini',
'w')
as
fw:
conf.write(fw)
#
读取配置信息
v1
=
conf.getint('config',
'v1')
v2
=
conf.get('config',
'v2')
v3
=
conf.getboolean('config',
'v3')
v4
=
conf.getfloat('config',
'v4')
print('v1:',
v1)
print('v2:',
v2)
print('v3:',
v3)
print('v4:',
v4)
打开conf.ini文件检查内容
3、模块常用函数:
1)读取配置文件
read(filename)
直接读取ini文件内容
sections()
得到所有的section,并以列表的形式返回
options(section)
得到该section的所有option
items(section)
得到该section的所有键值对
get(section,option)
得到section中option的值,返回为string类型
getint(section,option)
得到section中option的值,返回为int类型,还有相应的getboolean()和getfloat()
函数。
2)写入配置文件
add_section(section)
添加一个新的section
set(
section,
option,
value)
对section中的option进行设置,需要调用write将内容写入配置文件。
如何使用Python3读取配置文件
完整示例
下面是一个完整的示例程序,他将生成一个IpConfig.ini的配置文件,再读取文件中的数据,输出到屏幕上。
# -*- coding: utf-8 -*-
import configparser
#读取配置文件
config=configparser.ConfigParser()
config.read("IpConfig.ini")
#写入宿舍配置文件
try:
config.add_section("School")
config.set("School","IP","10.15.40.123")
config.set("School","Mask","255.255.255.0")
config.set("School","Gateway","10.15.40.1")
config.set("School","DNS","211.82.96.1")
except configparser.DuplicateSectionError:
print("Section 'School' already exists")
#写入比赛配置文件
try:
config.add_section("Match")
config.set("Match","IP","172.17.29.120")
config.set("Match","Mask","255.255.255.0")
config.set("Match","Gateway","172.17.29.1")
config.set("Match","DNS","0.0.0.0")
except configparser.DuplicateSectionError:
print("Section 'Match' already exists")
#写入配置文件
config.write(open("IpConfig.ini", "w"))
ip=config.get("School","IP")
mask=config.get("School","mask")
gateway=config.get("School","Gateway")
dns=config.get("School","DNS")
print((ip,mask+"\n"+gateway,dns))