Python学习 :常用模块(四)----- 配置文档
常用模块(四)
八、configparser 模块
官方介绍:A configuration file consists of sections, lead by a "[section]" header,and followed by "name: value" entries,
with continuations and such in the style of RFC 822.
ConfigParse 模块在 python3 中修改为 configparse ,此模块常用于生成和修改常见配置文档
Eg.编辑文档的配置文件
常见的文档格式
[DEFAULT]
ServerAliveInterval = 45
Compression = yes
CompressionLevel = 9
ForwardX11 = yes [bitbucket.org]
User = hg [topsecret.server.com]
Port = 50022
ForwardX11 = no
根据文档的格式要求来生成文件
import configparser config = configparser.ConfigParser()
# 进行文件配置的第一种方式
config["DEFAULT"] = {'ServerAliveInterval': '45',
'Compression': 'yes',
'CompressionLevel': '9'} config['bitbucket.org'] = {'User' : 'hg'} # 进行文件配置的第二种方式
config['topsecret.server.com'] = {}
topsecret = config['topsecret.server.com']
topsecret['Host Port'] = '50022' # 在字典中分别添加键值对
topsecret['ForwardX11'] = 'no' config['DEFAULT']['ForwardX11'] = 'yes' # 为第一个字典添加键值对
with open('example.ini', 'w') as configfile:
config.write(configfile)
configparse 模块的相关操作
工作方式:先把配置文件读取出来,放入一个对象中再进行相应的操作
import configparser # 把配置文件放入一个对象中,进行读取操作
config = configparser.ConfigParser()
config.read('example.ini')
# 浏览配置文件中的内容
print(config.sections())
>>> ['bitbucket.org', 'topsecret.server.com']
print(config.defaults()) # defaults 为特殊的单元,需要单独进行操作
>>> OrderedDict([('compressionlevel', '9'), ('serveraliveinterval', '45'), ('compression', 'yes'), ('forwardx11', 'yes')]) # 对配置文件进行取值
print(config['bitbucket.org']['User'])
for key in config['bitbucket.org']: print(key) # default为特殊的单元,无论对谁进行打印它都会跟着
>>> hg
user
compressionlevel
serveraliveinterval
compression
forwardx11 # 删除数据的两种方法
config.remove_section('topsecret.server.com')
config.remove_option('bitbucket.org','user') config.set('bitbucket.org','user','Mike')
print(config.has_section('topsecret.server.com'))
>>> False # 修改数据
config.write(open('example.ini', "w")) # 文件一旦写入后不能修改,此操作为重新创建一个名字相同文件,并进行相应的增加、删除、修改操作
Python学习 :常用模块(四)----- 配置文档的更多相关文章
- python学习——常用模块
在学习常用模块时我们应该知道模块和包是什么,关于模块和包会单独写一篇随笔,下面先来了解有关在python中的几个常用模块. 一.什么是模块 常见的场景:一个模块就是一个包含了python定义和声明的文 ...
- 三、python学习-常用模块
一.常用模块 1.math数学模块 在计算机中,所有数值在计算机底层都是约等于机制,并不是精确地 import math #ceil() 向上取整操作 math.ceil(3.1)=>4 #fl ...
- python常用模块-配置文档模块(configparser)
python常用模块-配置文档模块(configparser) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. ConfigParser模块用于生成和修改常见配置文档,当前模块的名称 ...
- Python(文件、文件夹压缩处理模块,shelve持久化模块,xml处理模块、ConfigParser文档配置模块、hashlib加密模块,subprocess系统交互模块 log模块)
OS模块 提供对操作系统进行调用的接口 os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 os.chdir("dirname") 改变当前脚本工作目 ...
- Python学习——python的常用模块
模块:用一堆代码实现了某个功能的代码集合,模块是不带 .py 扩展的另外一个 Python 文件的文件名. 一.time & datetime模块 import time import dat ...
- Python之常用模块学习(一)
本节大纲: 模块介绍 time &datetime模块 random os sys shutil json & picle shelve xml处理 yaml处理 configpars ...
- configparser模块——配置文档
configparser模块用于生成和修改常见配置文档. 预制配置文件:conf.ini [DEFAULT] ServerAliveInterval = 45 Compression = yes Co ...
- configparser模块——用于生成和修改常见配置文档
配置文档格式 [DEFAULT] ServerAliveInterval = 45 Compression = yes CompressionLevel = 9 ForwardX11 = yes [b ...
- Python自动化 【第五篇】:Python基础-常用模块
目录 模块介绍 time和datetime模块 random os sys shutil json和pickle shelve xml处理 yaml处理 configparser hashlib re ...
随机推荐
- Ajax学习---Ajax基础学习 180128
AJAX AJAX(Asynchronous Javascript And XML)翻译成中文就是“异步Javascript和XML”.即使用Javascript语言与服务器进行异步交互,传输的数据为 ...
- 自动化测试全套流程(一)-搭建Jenkins环境
前提 既然要做自动化测试,那我们就做得彻底一些,将整套系统部署在Linux服务器上,在搭建Jenkins环境之前,我已经通过VirtualBox安装了一个CentOS的服务器,搭建Jenkins是基于 ...
- 开闭原则(OCP)
开闭原则具有理想主义的色彩,它是面向对象设计的终极目标.因此,针对开闭原则的实现方法,一直都有面向对象设计的大师费尽心机,研究开闭原则的实现方式.后面要提到的里氏代换原则(LSP).依赖倒转原则(DI ...
- [原]Ubuntu 下安装apache+PHP
1.安装apache2 sudo apt-get install apache2 运行如下命令重启:sudo /etc/init.d/apache2 restart 在浏览器里输入http://loc ...
- 使用SN.exe对.Net生成的程序集进行签名
CLR用数字签名的方式防止程序集发布后被人篡改,也可以确定发布人,这个方法就是使用公/私钥对,然后对程序集所有模块取一个哈希生成一个数字签名放在程序集的元数据中. 1.创建公/私钥对 创建公/ ...
- 【[TJOI2017]异或和】
这道题挺神仙的,毕竟这个异或是需要进位的 看到区间和我们很自然的就想到了前缀和 于是处理一下前缀和答案就变成了这个样子 \[⊕\sum_{i=1}^n\sum_{j=1}^{i}pre_i-pre_{ ...
- PHP------TP命名空间
命名空间: 相当于一个虚拟的目录 正常管理文件使用文件夹--物理区分 TP框架的初始命名空间是:ThinkPHP\Library 在TP框架下命名空间里面使用\代表的是初始命名空间(ThinkPHP\ ...
- 配置mysql允许远程链接
默认情况下,mysql帐号不允许从远程登陆,只能在localhost登录.本文提供了二种方法设置mysql可以通过远程主机进行连接. 修改用户表的数据 登入mysql后,更改 mysql 数据库里的 ...
- sqoop数据迁移
3.1 概述 sqoop是apache旗下一款“Hadoop和关系数据库服务器之间传送数据”的工具. 导入数据:MySQL,Oracle导入数据到Hadoop的HDFS.HIVE.HBASE等数据存储 ...
- nRF5 SDK for Mesh(五) Light switch demo 点灯例子
Light switch demo 灯开demo Purpose This demo project consists of four sub examples - The light swit ...