您的位置:

python学习之配置文件操作(python 读取配置文件)

本文目录一览:

如何使用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))