【Python模块】configparser模块
admin
2023-07-24 16:42:16
0

configparser模块:

 是python标准库用来解析配置文件的模块。

格式:

    section:使用[]标记section名

    :或= :使用:或=赋值

[websv]
ip:'192.168.1.10'
port:443
name = 'root'
pw = 'root1990'
定义:
websv叫section

    同一个项可以多个值:

ip:'192.168.1.11','192.168.1.12','192.168.1.13'  #待测试

    read配置文件时,会自动把参数名变成小写


    一个section下有多个相同的参数,只能读取最后一个


    




方法、属性名参数作用示例
ConfigParser()

创建configpaser实例

read(filename)
filename: ini格式的文件名
打开ini格式的文件

sections()

以list形式返回所有section

items(section name)

section name:

指定section名字

把指定section的所有参数和值的元组,以list形式返回

options(section name)

section name:

指定section名字

以list形式,返回section里所有参数名
get[section name][args name]

section name:指定section名字

argsname:指定参数名

返回section的单个参数值。
getint()\getboolean()\getfloat()


add_section(section_name)section_name:指定section名字添加一个新的section
set(section_name,args_name,value)

section_name:指定section名字

args_name:指定参数名

value:设定参数的值

设定具体的参数值。
remove_section(section_name)section_name:指定section名字删除指定的section
remove_option(section_name,args_name)

section_name:指定section名字

args_name:指定参数名

删除section中的args项
clear()
清空除DEAFULT外所有section
write(open(file_name,'w'))open(file_name,'w')):以写模式打开一个文件把以上的编辑完成的信息存到file_name
has_section(section name)section name:指定section

寻找配置文件中指定的section

找到返回True,找不到返回False

进阶操作:


单个参数值是多行除首行外,其它行加一个空格

args = “行1

  行2”

结果:

行1

行2

参数值带变量url = http://%(host)s:%(port)s/Portal

[web]

host = '192.168.0.1'

port = 8000

url = http://%(host)s:%(port)s/Portal

结果:

http://192.168.0.1':8000/Portal

'section name' in configparser实例

判断实例中是否有section

返回True或False

DEAFUALT只能用此方式判断

‘DEAFULT’只能用此方法判断




####例一:
import configparser

config = configparser.ConfigParser()
config.read('example.ini')

#section_name = ['webserver']
#args_name = ['ip', 'port', 'url']
config.add_section('webserver')
config.set('webserver','ip','192.168.0.1')
config.set('webserver','port',8000)

config.set('webserver','url','http//:%(ip)s:%(port)s')
config.write(open('example.ini','w'))

print(config.sections())
print(config.options())
print(config.items())
print(config.get['webserver']['url'])

 

 

 

相关内容

热门资讯

美称设立军事协调小组协助落实美... △美国国务卿鲁比奥(资料图)当地时间6月26日,美国国务卿鲁比奥发布声明表示,当日,美国、黎巴嫩和以...
布基纳法索宣布与法国断交 △布基纳法索(资料图)当地时间6月26日,布基纳法索政府宣布,自当天起断绝与法国的外交关系。布政府表...
美以黎签署三方框架协议,细节披... 当地时间26日晚,一名以色列官员披露称,经过美国、以色列和黎巴嫩三方的会谈,三方代表当晚在美国签署了...
联合国官员:委内瑞拉强震后逾5... 财联社6月27日电,联合国分管人道主义事务的副秘书长兼紧急救援协调员汤姆·弗莱彻表示,在委内瑞拉发生...
伊朗否认伊美就霍尔木兹海峡问题... 当地时间26日,伊朗伊斯兰革命卫队发言人侯赛因·穆赫比表示,针对“伊朗与美国已就霍尔木兹海峡问题设立...
特朗普:伊朗违反了停火协议 财联社6月26日电,美国总统特朗普表示,美军击落了伊朗三架无人机。特朗普称伊朗在霍尔木兹海峡发动的无...
江阴祝塘:荣飞5G智能绿色工厂... 6月23日,江阴市祝塘镇重点数字化转型标杆项目——荣飞5G智能绿色工厂项目顺利完成主体封顶。该项目聚...
翔亚机械取得一种电梯按键专利,... 国家知识产权局信息显示,嘉兴市翔亚机械设备有限公司取得一项名为“一种电梯按键”的专利,授权公告号CN...
溧阳市博物馆一张展出照片被指系... 极目新闻记者 张奇 近日,有网友在社交网站反映,江苏常州溧阳市博物馆展出了使用AI技术生成的图片,其...
“我们不喜欢中国AI,因为不受... 【文/观察者网 王一】 “我不喜欢(中国的人工智能)的一点是,它完全是开源的,这意味着它很大程度上不...