如何写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 strip()函数 介绍
May 24 Python
Python中exit、return、sys.exit()等使用实例和区别
May 28 Python
将Python代码打包为jar软件的简单方法
Aug 04 Python
通过Pandas读取大文件的实例
Jun 07 Python
浅谈DataFrame和SparkSql取值误区
Jun 09 Python
如何优雅地处理Django中的favicon.ico图标详解
Jul 05 Python
tensorflow指定GPU与动态分配GPU memory设置
Feb 03 Python
Django模型中字段属性choice使用说明
Mar 30 Python
python中remove函数的踩坑记录
Jan 04 Python
Python控制台输出俄罗斯方块的方法实例
Apr 17 Python
基于python定位棋子位置及识别棋子颜色
Jul 26 Python
Python 类,对象,数据分类,函数参数传递详解
Sep 25 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
PHP采用get获取url汉字出现乱码的解决方法
2014/11/13 PHP
Laravel实现表单提交
2017/05/07 PHP
基于Jquery 解决Ajax请求的页面 浏览器后退前进功能,页面刷新功能实效问题
2010/12/11 Javascript
Javascript实现关联数据(Linked Data)查询及注意细节
2013/02/22 Javascript
当某个文本框成为焦点时即清除文本框内容
2014/04/28 Javascript
js的image onload事件使用遇到的问题
2014/07/15 Javascript
jQuery带时间的日期控件代码分享
2015/08/26 Javascript
jQuery Validate表单验证深入学习
2015/12/18 Javascript
全面理解闭包机制
2016/07/11 Javascript
JavaScript编写一个简易购物车功能
2016/09/17 Javascript
JS实现拖拽的方法分析
2016/12/20 Javascript
最通俗易懂的javascript变量提升详解
2017/08/05 Javascript
angular指令笔记ng-options的使用方法
2017/09/18 Javascript
Bootstrap栅格系统的使用详解
2017/10/30 Javascript
vue中子组件的methods中获取到props中的值方法
2018/08/27 Javascript
Vue中使用clipboard实现复制功能
2018/09/05 Javascript
vue-cli3.0如何使用CDN区分开发、生产、预发布环境
2018/11/22 Javascript
Python列表(list)、字典(dict)、字符串(string)基本操作小结
2014/11/28 Python
Python2.X/Python3.X中urllib库区别讲解
2017/12/19 Python
轻松实现TensorFlow微信跳一跳的AI
2018/01/05 Python
Python读取数据集并消除数据中的空行方法
2018/07/12 Python
Python在OpenCV里实现极坐标变换功能
2019/09/02 Python
PyTorch中permute的用法详解
2019/12/30 Python
django在保存图像的同时压缩图像示例代码详解
2020/02/11 Python
python将字典内容写入json文件的实例代码
2020/08/12 Python
HTML5手机端弹出遮罩菜单特效代码
2016/01/27 HTML / CSS
领先的钻石和订婚戒指零售商:Diamonds-USA
2016/12/11 全球购物
Maje德国官网:法国女性成衣品牌
2017/02/10 全球购物
J.Crew官网:美国知名休闲服装品牌
2017/05/19 全球购物
美国紧身牛仔裤品牌:NYDJ
2017/05/24 全球购物
介绍一下EJB的体系结构
2012/08/01 面试题
党员入党表决心的话
2014/03/11 职场文书
机关党员四风问题个人整改措施
2014/10/26 职场文书
2015年物业管理工作总结
2015/04/23 职场文书
2016年9月份红领巾广播稿
2015/12/21 职场文书
Java Redisson多策略注解限流
2022/09/23 Java/Android