如何写python的配置文件


Posted in Python onJune 07, 2020

一、创建配置文件

在D盘建立一个配置文件,名字为:test.ini

内容如下:

[baseconf]
host=127.0.0.1
port=3306
user=root
password=root
db_name=gloryroad
[test]
ip=127.0.0.1
int=1
float=1.5
bool=True

注意:要将文件保存为ansi编码,utf-8编码会报错

文件中的[baseconf]为section

二、读配置文件

import ConfigParser

cf=ConfigParser.ConfigParser()

cf.read(path) 读配置文件(ini、conf)返回结果是列表

cf.sections() 获取读到的所有sections(域),返回列表类型

cf.options('sectionname') 某个域下的所有key,返回列表类型

cf.items('sectionname') 某个域下的所有key,value对

value=cf.get('sectionname','key') 获取某个yu下的key对应的value值

cf.type(value) 获取的value值的类型

(1)getint(section, option)

获取section中option的值,返回int类型数据,所以该函数只能读取int类型的值。

(2)getboolean(section, option)

获取section中option的值,返回布尔类型数据,所以该函数只能读取boolean类型的值。

(3)getfloat(section, option)

获取section中option的值,返回浮点类型数据,所以该函数只能读取浮点类型的值。

(4)has_option(section, option)

检测指定section下是否存在指定的option,如果存在返回True,否则返回False。

(5)has_section(section)

检测配置文件中是否存在指定的section,如果存在返回True,否则返回False。

三、动态写配置文件

cf.add_section('test') 添加一个域

cf.set('test3','key12','value12') 域下添加一个key value对

cf.write(open(path,'w')) 要使用'w'

learn to fail, failure to learn

内容扩展:

python使用配置文件过程

通过配置文件将变量暴露给用户修改

标准库模块configparser,从而可在配置文件中使用标准格式。

必须使用[files]、[colors]等标题将配置文件分成几部分(section)。标题的名称可随便指定,但必须将它们用方括号括起。

$ cat area.ini

[numbers]
pi: 3.1415926535893971

[messages]
greeting: Welcome to the area calutation program!
question: plse enter the radius
result_message: The area is

使用python 读取他

from configparser import ConfigParser
CONFIGFILE = "area.ini"

config = ConfigParser()
#读取配置文件
config.read(CONFIGFILE)

print(config['messages'].get('greeting'))

radius = float(input(config['messages'].get('question') + ' '))

# 以空格结束以便接着在当前行打印:
print(config['messages'].get('result_message'),end=' ')
print(config['numbers'].getfloat('pi') * radius**2)

到此这篇关于如何写python的配置文件的文章就介绍到这了,更多相关python写配置文件方法内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python使用urllib模块开发的多线程豆瓣小站mp3下载器
Jan 16 Python
python实现文件名批量替换和内容替换
Mar 20 Python
python新手经常遇到的17个错误分析
Jul 30 Python
Python使用py2exe打包程序介绍
Nov 20 Python
Django卸载之后重新安装的方法
Mar 15 Python
使用Python制作一个打字训练小工具
Oct 01 Python
解决pymysql cursor.fetchall() 获取不到数据的问题
May 15 Python
python3.6.8 + pycharm + PyQt5 环境搭建的图文教程
Jun 11 Python
keras 模型参数,模型保存,中间结果输出操作
Jul 06 Python
python实现scrapy爬虫每天定时抓取数据的示例代码
Jan 27 Python
七个非常实用的Python工具包总结
Jun 15 Python
python解析json数据
Apr 29 Python
python dict乱码如何解决
Jun 07 #Python
python中adb有什么功能
Jun 07 #Python
python如何保存文本文件
Jun 07 #Python
Python如何用wx模块创建文本编辑器
Jun 07 #Python
python如何查看网页代码
Jun 07 #Python
python中对二维列表中一维列表的调用方法
Jun 07 #Python
python学习将数据写入文件并保存方法
Jun 07 #Python
You might like
深入探讨<br />和 \r\n两者有什么区别??
2013/06/05 PHP
php程序员应具有的7种能力小结
2014/11/27 PHP
CakePHP框架Model函数定义方法示例
2017/08/04 PHP
TNC vs IO BO3 第一场2.13
2021/03/10 DOTA
取得父标签
2006/11/14 Javascript
用一段js程序来实现动画功能
2007/03/06 Javascript
javascript 数组学习资料收集
2010/04/11 Javascript
原生Js实现按的数据源均分时间点幻灯片效果(已封装)
2010/12/28 Javascript
jquery实现textarea输入字符控制(仿微博输入控制字符)
2013/04/26 Javascript
Jquery getJSON方法详细分析
2013/12/26 Javascript
使用JS获取当前地理位置方法汇总
2014/12/18 Javascript
使用jQuery简单实现模拟浏览器搜索功能
2014/12/21 Javascript
JavaScript数组对象赋值用法实例
2015/08/04 Javascript
JavaScript数据绑定实现一个简单的 MVVM 库
2016/04/08 Javascript
一系列Bootstrap导航条使用方法分享
2016/04/29 Javascript
jQuery unbind 删除绑定事件详解
2016/05/24 Javascript
浅谈jQuery为哪般去掉了浏览器检测
2016/08/29 Javascript
NodeJs使用Mysql模块实现事务处理实例
2017/05/31 NodeJs
详解vue 配合vue-resource调用接口获取数据
2017/06/22 Javascript
js观察者模式的弹幕案例
2020/11/23 Javascript
vue3.0 自适应不同分辨率电脑的操作
2021/02/06 Vue.js
Python开发常用的一些开源Package分享
2015/02/14 Python
详谈python在windows中的文件路径问题
2018/04/28 Python
Python安装及Pycharm安装使用教程图解
2019/09/20 Python
使用python实现哈希表、字典、集合操作
2019/12/22 Python
Python基于Socket实现简单聊天室
2020/02/17 Python
CSS3的resize属性使用初探
2015/09/27 HTML / CSS
CSS3打造磨砂玻璃背景效果
2016/09/28 HTML / CSS
高中毕业典礼演讲稿
2014/09/09 职场文书
2014年镇党建工作汇报材料
2014/11/02 职场文书
党建工作目标管理责任书
2015/01/29 职场文书
结婚仪式主持词
2015/06/29 职场文书
2015年高中生国庆节演讲稿
2015/07/30 职场文书
银行柜员工作心得体会
2016/01/23 职场文书
2016天猫双十一广告语
2016/01/28 职场文书
Java并发编程之详解CyclicBarrier线程同步
2021/06/23 Java/Android