configparser   模块

解析配置文件模块

什么是配置文件?

用于编写程序的配置信息的文件

什么是配置信息?

为了提高程序的扩展性

#configparser模块的使用
#首先我们需要知道配置文件怎么写,配置文件的组成
[section1] #分区1
k1 = v1 #分区1内的选项
k2:v2
user=ming
age=25
is_admin=true
salary=31

[section2] #分区2
k1 = v1 #分区2的选项
#分区不能重名,同一分区内的选项不能一样

#使用
#1.首先创建一个配置文件解析器
cfg = configparser.ConfigParser() #创建配置文件解析器
cfg.read('test.cfg', encoding='utf-8') #读取名为test的配置文件,编码格式为utf-8


#1.读取文件
#获取分区
res = cfg.sections() #查看所有分区
print(res) #[section1 , stection2]
#获取分区下的某一选项
res = cfg.get('section1', 'user') #查看分区section1下的user对应的值
print(res) #ming type为字符串类型
#获取分区下所有的选项
res = cfg.options('section1') #查看section1下的所有选项
print(res) #['k1', 'k2', 'user', 'age', 'is_admin', 'salary']
#获取分区下is_admin的布尔值
res = cfg.getboolean('section1', 'is_admin') #查看is_admin的布尔值
print(res) #输出的是True
#获取分区下salary的浮点数
res = cfg.getfloat('section1', 'salary') #查看浮点数
print(res) #31.0
#获取分区下age选项的整型数字
res = cfg.getint('section1', 'age') #查看整型
print(res) #25 整型数字
#获取分区下所有键值对
res = cfg.items('section1') #查看分区下所有选项的键值
print(res) #[('k1','v1'),('k2','v2'),('user', 'ming'),('age', '25'),('is_admin', 'True'),('salary', '31')]


#2.改写
cfg = configparser.ConfigParser() #创建配置文件解析器
cfg.read('test.cfg', encoding='utf-8') #读取名为test的配置文件,编码格式为utf-8
#删除整个标题section2
config.remove_section('section2')

#删除标题section1下的某个k1和k2
config.remove_option('section1','k1')
config.remove_option('section1','k2')

#判断是否存在某个标题
print(config.has_section('section1'))

#判断标题section1下是否有user
print(config.has_option('section1',''))


#添加一个标题
config.add_section('egon')

#在标题egon下添加name=egon,age=18的配置
config.set('egon','name','egon')
config.set('egon','age',18) #报错,必须是字符串
!!!注意
#最后将修改的内容写入文件,完成最终的修改
config.write(open('a.cfg','w'))

python中configpraser模块的更多相关文章

  1. Python中optionParser模块的使用方法[转]

    本文以实例形式较为详尽的讲述了Python中optionParser模块的使用方法,对于深入学习Python有很好的借鉴价值.分享给大家供大家参考之用.具体分析如下: 一般来说,Python中有两个内 ...

  2. python中threading模块详解(一)

    python中threading模块详解(一) 来源 http://blog.chinaunix.net/uid-27571599-id-3484048.html threading提供了一个比thr ...

  3. 【转】关于python中re模块split方法的使用

    注:最近在研究文本处理,需要用到正则切割文本,所以收索到了这篇文章,很有用,谢谢原作者. 原址:http://blog.sciencenet.cn/blog-314114-775285.html 关于 ...

  4. Python中的模块介绍和使用

    在Python中有一个概念叫做模块(module),这个和C语言中的头文件以及Java中的包很类似,比如在Python中要调用sqrt函数,必须用import关键字引入math这个模块,下面就来了解一 ...

  5. python中导入模块的本质, 无法导入手写模块的解决办法

    最近身边一些朋友发生在项目当中编写自己模块,导入的时候无法导入的问题. 下面我来分享一下关于python中导入模块的一些基本知识. 1 导入模块时寻找路径 在每一个运行的python程序当中,都维护了 ...

  6. Python中time模块详解

    Python中time模块详解 在平常的代码中,我们常常需要与时间打交道.在Python中,与时间处理有关的模块就包括:time,datetime以及calendar.这篇文章,主要讲解time模块. ...

  7. Python中collections模块

    目录 Python中collections模块 Counter defaultdict OrderedDict namedtuple deque ChainMap Python中collections ...

  8. Python中pathlib模块

    Python中pathlib模块 Path.cwd():返回当前目录的路径 Path.home():返回当前用户的家目录 Path.stat():返回此路径信息 Path.touch():创建文件 P ...

  9. Python 中包/模块的 `import` 操作

    版权声明:博客为作者原创,允许转载,但必须注明原文地址: https://www.cnblogs.com/byronxie/p/10745292.html 用实例来说明 import 的作用吧. 创建 ...

随机推荐

  1. Linux下截屏方法

    参考百度经验 https://jingyan.baidu.com/article/48a42057c8e8dfa92525047c.html 第一种: 截屏部分画面并保存 快捷键Shift+PrtSc

  2. c++ 11 移动语义

    C++ 已经拥有了拷贝构造函数, 和赋值函数,它们主要定位为浅和深度拷贝, 新增加一个移动构造函数,主要避免拷贝构造. 在定义了移动构造函数的情况下,在实参(argument)是一个右值(rvalue ...

  3. 【转载】 星际争霸2的AI环境搭建

    原文地址: https://blog.csdn.net/qq_40244666/article/details/80957644 作者:BOY_IT_IT 来源:CSDN -------------- ...

  4. RabbitMQ学习之旅(一)

    RabbitMQ学习总结(一) RabbitMQ简介 RabbitMQ是一个消息代理,其接收并转发消息.类似于现实生活中的邮局:你把信件投入邮箱的过程,相当于往队列中添加信息,因为所有邮箱中的信件最终 ...

  5. 互联网媒体类型 MIME Type

    参考:https://zh.wikipedia.org/wiki/%E4%BA%92%E8%81%94%E7%BD%91%E5%AA%92%E4%BD%93%E7%B1%BB%E5%9E%8B 互联网 ...

  6. vue学习笔记——路由

    1 路由配置 在vue.config中配置,则在代码中可以使用 @来表示src目录下 import aa from '@/aa/index.js' 2 单页面可以懒加载 3 创建动态路由 路由中定义: ...

  7. 运行gunicorn失败:[ERROR] Connection in use: ('0.0.0.0', 8000)

    参考:https://pdf-lib.org/Home/Details/5262 执行命令:gunicorn -w 4 -b 0.0.0.0:8000 wsgi:app,遇到如下错误: [2019-0 ...

  8. 如何写一个makefile

    最近因为编译需求,需要更改一些编译条件,顺带看了一些Makefile相关的知识,介绍的很详细,但是例子很少,拆分的比较零碎.初学的话,确实有点压力,我还是喜欢直接在原有的基础上改一些东西,然后遇到问题 ...

  9. 将文件夹下的所有csv文件存入数据库

    # 股票的多因子分层回测代码实现 import os import pymysql # import datetime, time # from config import * database_ta ...

  10. cliipblard.js 实现点击复制

    <script src="js/clipboard.min.js"></script> <script type="text/javascr ...