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. ROS中DDNS的使用

    一.通过tool fetch更新ddns,关于此命令的使用,参考 tool fetch Scripts中添加脚本/tool fetch url="http://www.51kwl.com/? ...

  2. virtualenv 安装使用

      不同的人喜欢用不同的方式建立各自的开发环境,但在几乎所有的编程社区,总有一个(或一个以上)开发环境让人更容易接受. 使用不同的开发环境虽然没有什么错误,但有些环境设置更容易进行便利的测试,并做一些 ...

  3. Appium简单测试用例

    工程目录如下: 封装初始化androiddriver 方法 import org.openqa.selenium.remote.DesiredCapabilities; import java.io. ...

  4. BZOJ 4390: [Usaco2015 dec]Max Flow

    4390: [Usaco2015 dec]Max Flow Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 177  Solved: 113[Submi ...

  5. jQuery-DataTables相关的网址

    DataTables 有没有觉得这张图的数据很熟悉,对,他们都是copy来的. 之前用了一个bootstrap的框架,写那个框架的老师,有点抠门,把很多js都合在了一起,不知道怎么去自定义自己的东西, ...

  6. iOS XCode7制作.Framework动态库和.a静态库的总结

    一.开发SDK时的支持情况: OC语言制作动态库时,支持iOS8+:OC语言制作静态库,支持iOS7+. Swift语言制作动态库时,支持iOS8+;Swift不支持静态库. 对于SDK来说,支持情况 ...

  7. (function($){...}) (jQuery)

    这里实际上是匿名函数 function(arg){...}这就定义了一个匿名函数,参数为arg 而调用函数 时,是在函数后面写上括号和实参的,由于操作符的优先级,函数本身也需要用括号,即:(funct ...

  8. 论php数组合并

    注:尽量不要在循环中操作数据库. 1.两个一维数组合并成一个一维数组 $a = array('morning','afternoon','night'); $b = array('breakfast' ...

  9. ip地址库 新浪,淘宝

    原文连接地址:http://www.9958.pw/post/city_ip function getAddressFromIp($ip){ $urlTaobao = 'http://ip.taoba ...

  10. 数字与字母混合生成流水号规则--ASP实现

    最近遇到一个比较奇葩的事情,自己所负责的一个系统出现一个流水号用完的问题:正常情况下,流水号用完应该增加多位来解决这个问题.鉴于各种因素,最后决定:位数不变,增加字母进去,当数字用完后,会出现字母,而 ...