python操作cfg配置文件方式


Posted in Python onDecember 22, 2019

*.cfg文件一般是程序运行的配置文件,python为读写常见配置文件提供了一个ConfigParser模块,所以在python中解析配置文件相当简单,下面就举例说明一下具体的操作方法。

写文件代码:

# -* - coding: UTF-8 -* -
import os
import ConfigParser
 
CONFIG_FILE = "Config.cfg"
 
host = "127.0.0.1"
 
port = "5432"
 
name = "DATABASE_NAME"
 
username = "postgres"
 
password = "postgres"
 
if __name__ == "__main__":
 
   conf = ConfigParser.ConfigParser()
 
   cfgfile = open(CONFIG_FILE,'w')
 
   conf.add_section("DB_Config") # 在配置文件中增加一个段
 
   # 第一个参数是段名,第二个参数是选项名,第三个参数是选项对应的值
 
   conf.set("DB_Config", "DATABASE_HOST", host) 
 
   conf.set("DB_Config", "DATABASE_PORT", port)
 
   conf.set("DB_Config", "DATABASE_NAME", name)
 
   conf.set("DB_Config", "DATABASE_USERNAME", username)
 
   conf.set("DB_Config", "DATABASE_PASSWORD", password)
 
   conf.add_section("FL_Config")
 
   # 将conf对象中的数据写入到文件中
 
   conf.write(cfgfile)
 
   cfgfile.close()

生成的配置文件Config.cfg如下:

[DB_Config]

database_host = 127.0.0.1

database_port = 5432

database_name = DATABASE_NAME

database_username = postgres

database_password = postgres


[FL_Config]

读文件代码:

# -* - coding: UTF-8 -* -
 
import os
 
import ConfigParser
 
CONFIG_FILE = "Config.cfg"
 
def main():
 
   if os.path.exists( os.path.join( os.getcwd(),CONFIG_FILE ) ):
 
     config = ConfigParser.ConfigParser()
 
     config.read(CONFIG_FILE)
 
     #第一个参数指定要读取的段名,第二个是要读取的选项名
 
     host = config.get("DB_Config", "DATABASE_HOST") 
 
     port = config.get("DB_Config", "DATABASE_PORT")
 
     name = config.get("DB_Config", "DATABASE_NAME")
 
     username = config.get("DB_Config", "DATABASE_USERNAME")
 
     password = config.get("DB_Config", "DATABASE_PASSWORD")
 
     print host, port, name, username, password
 
if __name__ == '__main__':
 
   main()

输出结果:127.0.0.1 5432 DATABASE_NAME postgres postgres

以上就是python读写cfg配置文件的简单操作,当然,也可以利用config.sections()来获取所有的段,

config. options("DB_Config")来获取DB_Config段下的所有选项等等。

这篇python操作cfg配置文件方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Windows系统下安装Python的SSH模块教程
Feb 05 Python
Python的Flask框架中web表单的教程
Apr 20 Python
查看django版本的方法分享
May 14 Python
python针对不定分隔符切割提取字符串的方法
Oct 26 Python
python 求1-100之间的奇数或者偶数之和的实例
Jun 11 Python
Python threading的使用方法解析
Aug 28 Python
在Python中实现函数重载的示例代码
Dec 12 Python
python matplotlib模块基本图形绘制方法小结【直线,曲线,直方图,饼图等】
Apr 26 Python
Python实现读取并写入Excel文件过程解析
May 27 Python
python下对hsv颜色空间进行量化操作
Jun 04 Python
使用Selenium实现微博爬虫(预登录、展开全文、翻页)
Apr 13 Python
Python利用zhdate模块实现农历日期处理
Mar 31 Python
python实现局域网内实时通信代码
Dec 22 #Python
python 解决flask uwsgi 获取不到全局变量的问题
Dec 22 #Python
Python调用scp向服务器上传文件示例
Dec 22 #Python
python 通过手机号识别出对应的微信性别(实例代码)
Dec 22 #Python
python3 动态模块导入与全局变量使用实例
Dec 22 #Python
Python实现手机号自动判断男女性别(实例解析)
Dec 22 #Python
Python代码生成视频的缩略图的实例讲解
Dec 22 #Python
You might like
PHP strtotime函数详解
2009/12/18 PHP
基于PHP CURL获取邮箱地址的详解
2013/06/03 PHP
推荐几款用 Sublime Text 开发 Laravel 所用到的插件
2014/10/30 PHP
Yii2框架引用bootstrap中日期插件yii2-date-picker的方法
2016/01/09 PHP
PHP的Yii框架中创建视图和渲染视图的方法详解
2016/03/29 PHP
PHP序列化/对象注入漏洞分析
2016/04/18 PHP
laravel中的错误与日志用法详解
2016/07/26 PHP
如何在Laravel5.8中正确地应用Repository设计模式
2019/11/26 PHP
小议Function.apply() 之一------(函数的劫持与对象的复制)
2006/11/30 Javascript
JavaScript创建类/对象的几种方式概述及实例
2013/05/06 Javascript
chrome下jq width()方法取值为0的解决方法
2014/05/26 Javascript
JavaScrip调试技巧之断点调试
2015/10/22 Javascript
谈谈基于iframe、FormData、FileReader三种无刷新上传文件的方法
2015/12/03 Javascript
jQuery检查元素存在性(推荐)
2016/09/17 Javascript
JavaScript常用数学函数用法示例
2018/05/14 Javascript
vue+element+Java实现批量删除功能
2019/04/08 Javascript
jquery实现的分页显示功能示例
2019/08/23 jQuery
Vue项目如何引入bootstrap、elementUI、echarts
2020/11/26 Vue.js
[04:41]2014DOTA2国际邀请赛 Liquid顺利突围晋级正赛
2014/07/09 DOTA
[01:30]我们共输赢 完美世界城市挑战赛开启全新赛季
2019/04/19 DOTA
利用soaplib搭建webservice详细步骤和实例代码
2013/11/20 Python
Python算法之求n个节点不同二叉树个数
2017/10/27 Python
pybind11在Windows下的使用教程
2019/07/04 Python
python GUI库图形界面开发之PyQt5信号与槽多窗口数据传递详细使用方法与实例
2020/03/08 Python
Python读取Excel数据并生成图表过程解析
2020/06/18 Python
如何在scrapy中集成selenium爬取网页的方法
2020/11/18 Python
Python3 用什么IDE开发工具比较好
2020/11/28 Python
python字典与json转换的方法总结
2020/12/28 Python
如何利用CSS3制作3D效果文字具体实现样式
2013/05/02 HTML / CSS
Html5 video标签视频的最佳实践
2020/02/26 HTML / CSS
Servlet都有哪些方法?主要作用是什么?
2014/03/04 面试题
工程管理造价应届生求职信
2013/11/13 职场文书
商务英语应届生自我鉴定
2013/12/08 职场文书
高一自我鉴定
2013/12/17 职场文书
技术股份合作协议书
2014/10/05 职场文书
个人股份转让协议书范本
2014/10/26 职场文书