ini函数python 函数 in

如何使用Python3读取配置文件

ini是微软Windows操作系统中的文件扩展名(也常用在其他系统)。

柯坪网站制作公司哪家好,找创新互联建站!从网页设计、网站建设、微信开发、APP开发、成都响应式网站建设公司等网站项目制作,到程序开发,运营维护。创新互联建站于2013年创立到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联建站

INI是英文“初始化(Initial)”的缩写。正如该术语所表示的,INI文件被用来对操作系统或特定程序初始化或进行参数设置。通过它,可以将经常需要改变的参数保存起来(而且还可读),使程序更加的灵活。

先给出一个ini文件的示例。

1234567891011[School]ip = 10.15.40.123mask = 255.255.255.0gateway = 10.15.40.1dns = 211.82.96.1 [Match]ip = 172.17.29.120mask = 255.255.255.0gateway = 172.17.29.1dns = 0.0.0.0

这个配置文件中保存的是不同场合下的IP设置参数。

首先,Python读取ini配置需要用到ConfigParser包,所以要先加载它。

1import configparser

之后我们需要载入配置文件。

1config=configparser.ConfigParser()

#IpConfig.ini可以是一个不存在的文件,意味着准备新建配置文件。

1config.read("IpConfig.ini")

接下来,我们可以使用configparser.add_section()向配置文件中添加一个Section。

#添加节School

1config.add_section("School")

注意:如果文件中已经存在相应的项目,则不能再增加同名的节。

然后可以使用configparser.set()在节School中增加新的参数。

#添加新的IP地址参数

1234config.set("School","IP","192.168.1.120")config.set("School","Mask","255.255.255.0")config.set("School","Gateway","192.168.1.1")config.set("School","DNS","211.82.96.1")

你可以以同样的方式增加其它几项。

#由于ini文件中可能有同名项,所以做了异常处理

12345678try: 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")

增加完所有需要的项目后,要记得使用configparser.write()进行写入操作。

1config.write(open("IpConfig.ini", "w"))

以上就是写入配置文件的过程。

接下来我们使用configparser.get()读取刚才写入配置文件中的参数。读取之前要记得读取ini文件。

12345ip=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)

下面是一个完整的示例程序,它将生成一个IpConfig.ini的配置文件,再读取文件中的数据,输出到屏幕上。

1# -*- 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))

如何使用Python3读写INI配置文件

使用 内置 模块:import configparser

import os, configparser, time

cp = configparser.ConfigParser()

Settings = dict(

config_file = os.path.join(os.path.dirname(__file__),'monitor.conf'),

config = cp

)

def reload():  #重置设置

cp = Settings['config']

cp.read(Settings['config_file'])

def get(section,key,default=None):   #获取section中的key对应的value

cp = Settings['config']

try:

value = cp.get(section, key)

except (configparser.NoSectionError,configparser.NoOptionError):

value = default

return value

reload()

if __name__=='__main__':

print(get('section1', 'key1'))

print(1)

time.sleep(5)

reload()

print(get('section', 'key1'))

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.9 读写ini文件

官方文档

从源码看出,这个ini文档,可以像字典一样,使用“:”,但一般我们都使用“=”,并且值都不需要加引号

备注可以使用'#'或';',单独一行,可缩进。

class ConfigParser(RawConfigParser):

class RawConfigParser(MutableMapping):

详细看官网,不搬砖,列出几个我自己常用的


网站名称:ini函数python 函数 in
网站链接:http://myzitong.com/article/dodshec.html