Python模块之configpraser

 

一. configpraser简介

  用于处理特定格式的文件,其本质还是利用open来操作文件。

  配置文件的格式:

    使用"[]"内包含section,section下为类似key-value的配置内容(例如:samba配置文件)

G:\Python项目实战\模块\configparser>start example.txt   #基于windows平台

# 注释1
;注释2 [global] #节点
workgroup = WORKGROUP #值(key-value)
security = share
maxlog = 50 [public]
comment = stuff
public = True
pi = 3.1415926

二. configpraser初始化

  使用时必须先初始化并读取配置文件

import configparser

config = configparser.ConfigParser()
config.read('example.txt',encoding='utf-8')

三. configpraser常用方法

  1. 获取所有节点:

ret = config.sections()  #读取配置文件里所有的"[]"信息
print(ret) #输出: ['global', 'public']

  2. 获取指定节点下的所有键值对:

ret = config.items('global')#获取指定节点的所有键值对
print(ret) #输出: [('workgroup', 'WORKGROUP'), ('security', 'share'), ('maxlog', '')]

  3. 获取指定节点下的所有键:

ret = config.options('public')#指定节点下的所有键
print(ret) #输出: ['comment', 'public', 'pi']

  4. 获取指定节点下指定key的值:

ret = config.get('global','workgroup')#获取指定节点下key的值
# ret = config.getint('global','maxlog')#获取指定节点下key值,必须为整数否则报错
# ret = config.getfloat('public','pi')#获取指定节点下key值,必须为浮点数否则报错
# ret = config.getboolean('public','public')#获取指定节点下key值,必须为布尔值否则报错
print(ret)

  5. 检查,添加,删除节点

#检查
check = config.has_section('global') #检查此节点下是否有值,返回布尔值
print(check)
#输出:
True #添加节点
config.add_section('local') #添加到内存
config.write(open('example.txt','w')) #写入文件中
ret = config.sections()
print(ret)
#输出:
['global', 'public', 'local'] #删除节点
config.remove_section('local') #删除节点
config.write(open('example','w'))#重新写入文件
ret = config.sections()
print(ret)
#输出:
['global', 'public']

  6. 检查,删除,设置指定组内的键值对

#检查
check = config.has_option('public','comment')#检查节点下的某个键,返回布尔值
print(check)
输出:
True #删除
config.remove_option('global','workgroup')
config.write(open('example.txt','w'))
ret = config.options('global')
print(ret)
#输出:
['security', 'maxlog'] #设置指定节点内的键值对
ret1 = config.get('global','maxlog')
print(ret1)
config.set('global','maxlog','')
config.write(open('example.txt','w'))
ret2 = config.get('global','maxlog')
print(ret2) #输出:
50
100

Python模块之configpraser的更多相关文章

  1. 使用C/C++写Python模块

    最近看开源项目时学习了一下用C/C++写python模块,顺便把学习进行一下总结,废话少说直接开始: 环境:windows.python2.78.VS2010或MingW 1 创建VC工程 (1) 打 ...

  2. Python模块之"prettytable"

    Python模块之"prettytable" 摘要: Python通过prettytable模块可以将输出内容如表格方式整齐的输出.(对于用Python操作数据库会经常用到) 1. ...

  3. python 学习第五天,python模块

    一,Python的模块导入 1,在写python的模块导入之前,先来讲一些Python中的概念性的问题 (1)模块:用来从逻辑上组织Python代码(变量,函数,类,逻辑:实现一个功能),本质是.py ...

  4. windows下安装python模块

    如何在windows下安装python模块 1. 官网下载安装包,比如(pip : https://pypi.python.org/pypi/pip#downloads) pip-9.0.1.tar. ...

  5. 安装第三方Python模块,增加InfoPi的健壮性

    这3个第三方Python模块是可选的,不安装的话InfoPi也可以运行. 但是如果安装了,会增加InfoPi的健壮性. 目录 1.cchardet    自动检测文本编码 2.lxml    用于解析 ...

  6. Python基础篇【第5篇】: Python模块基础(一)

    模块 简介 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护. 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就 ...

  7. python 模块加载

    python 模块加载 本文主要介绍python模块加载的过程. module的组成 所有的module都是由对象和对象之间的关系组成. type和object python中所有的东西都是对象,分为 ...

  8. pycharm安装python模块

    这个工具真的好好,真的很喜欢,它很方便,很漂亮,各种好 pycharm安装python模块:file-setting-搜索project inte OK

  9. Python模块常用的几种安装方式

    Python模块安装方法 一.方法1: 单文件模块直接把文件拷贝到 $python_dir/Lib 二.方法2: 多文件模块,带setup.py 下载模块包,进行解压,进入模块文件夹,执行:pytho ...

随机推荐

  1. Oracle11g字符集AL32UTF8修改为ZHS16GBK详解

    此问题发生在数据库迁移过程中.源数据库:自己笔记本上win7 64位系统的oracle11g个人版,字符集ZHS16GBK :目标数据库,HP的sqlserver2008 系统 64位数据库服务器,字 ...

  2. vuex 初体验

    vuex是vue的状态管理工具,vue进阶从es6和npm开始,es6推荐阮一峰大神的教程. vuex学习从官方文档和一个记忆小游戏开始.本着兴趣为先的原则,我先去试玩了一把-->. Vuex ...

  3. mysql-netstat

    在Linux服务器中想要查看连接到服务器的所有IP地址只需要输入命令netstat -an就可以看到全部的资料. 该命令的常见参数供您参考: -a (all)显示所有选项,默认不显示LISTEN相关: ...

  4. oracle数据查询

    select * from XMBL_EM_DBBACK where f_djbh='DB01201612270013'select * from flow_task_list where biz_d ...

  5. [速记]关于指针,引用和递归和解递归——C++

    在写基于二叉排序树的查找时,分为三个过程 1.二叉排序树的插入 2.二叉排序树的建立 3.基于二叉排序树的查找 其中第三部可以递归方式实现,也可以用while循环解递归,于是我想也解解第一步的递归,看 ...

  6. word中公式居中标号没有右对齐

    打开视图-标尺,调整右侧标尺就行了.

  7. css随笔1

    1.简单清除浏览器样式 *{        padding: 0px;        margin: 0px;    } 2.得到屏幕范围的div html,body{        width: 1 ...

  8. Struts(View)

    案例:http://blog.csdn.net/jiuqiyuliang/article/details/39061305 减少在运用MVC设计模型来开发Web应用的时间. l  M —— JavaB ...

  9. 《JAVA与模式》之观察者模式

    转自:http://www.cnblogs.com/java-my-life/archive/2012/05/16/2502279.html 在阎宏博士的<JAVA与模式>一书中开头是这样 ...

  10. AJAX应用小案例

    此案例在XAMPP本地服务器上运行,需要应用jquery3.1.1的版本,应用JSON传递数据 代码如下: html代码: <!DOCTYPE html><html lang=&qu ...