yaml模块:

python可以处理yaml文件,yaml文件安装的方法为:$ pip3 install pyyaml

   configparser模块,用来处理文件的模块,可以实现文件的增删改查

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

下面来看看configarser模块的功能:

[DEFAULT]
serveraliveinterval =
compression = yes
compressionlevel =
forwardx11 = yes [bitbucket.org]
user = hg [topsecret.server.com]
host port =
forwardx11 = no

上面代码格式就是configparser的常见格式,这中文件格式在有些地方很常见。

import configparser

config = configparser.ConfigParser()
config["DEFAULT"] = {"ServerAliveInterval":"",
"compression":"yes",
"CompressionLevel":""} config["bitbucket.org"] = {}
config["bitbucket.org"]["user"] = "hg"
config["topsecret.server.com"] = {} #定义一个空的字典
topsecret = config["topsecret.server.com"] #把空的字典赋值给topsecret,生成一个空字典
topsecret["Host Port"] = "" #给字典添加键值对
topsecret["Forwardx11"] = "no"
config["DEFAULT"]["Forwardx11"] = "yes"
with open("config_file.ini","w") as configfile:
config.write(configfile) 运行如下:
[DEFAULT]
serveraliveinterval = 45
compression = yes
compressionlevel = 9
forwardx11 = yes [bitbucket.org]
user = hg [topsecret.server.com]
host port = 50022
forwardx11 = no

从上面代码可以看出,其文件的格式类似于字典的形式,包含keys和values类型,我们首先要定义一个configparser的文件,然后往文件中添加键值对。如上面代码所示:

上面我们把字典写进文件之后,如何读取呢?下面来看看configparser.ConfigParser的文件操作:

    读取:

>>> import configparser
  >>> config = configparser.ConfigParser()           #定义一个文件信息
  >>> config.sections()
  []

  >>> config.read('example.ini')
  ['example.ini']
   
    >>> config.sections()
    ['bitbucket.org', 'topsecret.server.com']
    下面来看看configparser模块中文件的增删改查:
import configparser

config = configparser.ConfigParser()
config.read("config_file.ini") #删除文件中的字段
sec = config.remove_section("bitbucket.org")
config.write(open("config_file.ini","w")) #添加新的字段到文件中
# sec = config.has_section("alex")
# config.add_section("alex")
# config["alex"]["age"] = ""
# config.write(open("config_file.ini","w")) #修改字段中的文件信息
config.set("alex","age","")
config.write(open("config_file.ini","w"))

上面代码的字段中,我们实现了增删改查的功能。要了解文件中的功能即可。并且能够操作,其实很多时候都对文件操作的思路都是相同的,只是实现的方式不一样,代码的写法不一样而已。

day6 ConfigParser模块 yaml模块的更多相关文章

  1. Day6 Python常用的模块

    一.logging模块 一.日志级别 critical=50 error=40 waring=30 info=20 debug=10 notset=0 二.默认的日志级别是waring(30),默认的 ...

  2. pytho day6 <正则表达式、常用模块、反射>

    本节介绍: 一:正则表达式: 正则表达并不是python 独有的.在各个语言里都有该语法的介绍.正则表达是处理字符串的强大的处理工具.拥有自己的独特的 处理方法.和处理引擎.虽然性能没有python ...

  3. Python(文件、文件夹压缩处理模块,shelve持久化模块,xml处理模块、ConfigParser文档配置模块、hashlib加密模块,subprocess系统交互模块 log模块)

    OS模块 提供对操作系统进行调用的接口 os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 os.chdir("dirname")  改变当前脚本工作目 ...

  4. s14 第5天 时间模块 随机模块 String模块 shutil模块(文件操作) 文件压缩(zipfile和tarfile)shelve模块 XML模块 ConfigParser配置文件操作模块 hashlib散列模块 Subprocess模块(调用shell) logging模块 正则表达式模块 r字符串和转译

    时间模块 time datatime time.clock(2.7) time.process_time(3.3) 测量处理器运算时间,不包括sleep时间 time.altzone 返回与UTC时间 ...

  5. python之hashlib、configparser、logging模块

    hashlib模块 Python的hashlib提供了常见的摘要算法,如MD5,SHA1等等. 什么是摘要算法呢?摘要算法又称哈希算法.散列算法.它通过一个函数,把任意长度的数据转换为一个长度固定的数 ...

  6. hashlib模块configparser模块logging模块

    hashlib模块 算法介绍 Python的hashlib提供了常见的摘要算法,如MD5,SHA1等等. 什么是摘要算法呢?摘要算法又称哈希算法.散列算法.它通过一个函数,把任意长度的数据转换为一个长 ...

  7. os模块,os.path模块,subprocess模块,configparser模块,shutil模块

    1.os模块 os表示操作系统该模块主要用来处理与操作系统相关的操作最常用的文件操作打开 读入 写入 删除 复制 重命名 os.getcwd() 获取当前执行文件所在的文件夹路径os.chdir(&q ...

  8. configparser、subprocess模块

    一.configparser模块 该模块适用于配置文件的格式与windows ini文件类似,可以包含一个或多个节(section),每个节可以有多个参数(键=值). 1.创建文件 一般软件的常见文档 ...

  9. python 常用模块 time random os模块 sys模块 json & pickle shelve模块 xml模块 configparser hashlib subprocess logging re正则

    python 常用模块 time random os模块 sys模块 json & pickle shelve模块 xml模块 configparser hashlib  subprocess ...

随机推荐

  1. RACCommand中的信号

    示例: RACSignal* textSignal = [RACSignal createSignal:^RACDisposable *(id<RACSubscriber> subscri ...

  2. NDKr10的各种BUG

    NDKr10有几个BUG,所以推荐使用NDKr9 bug1:不支持srand() bug2: 链接异常,找不到stpcpy()

  3. Maven学习一:使用Myeclipse创建Maven项目

    使用Myeclipse2014创建Maven项目有如下几种方式: 1.创建Maven Java项目 1.1 选择新建Maven项目 1.2.选择创建简单项目 1.3.填写项目信息 1.4.创建成功后项 ...

  4. 洛谷 p2530 化工场装箱员(资源型)

    化工场装箱员 https://www.luogu.org/problem/show?pid=2530 118号工厂是世界唯一秘密提炼锎的化工厂,由于提炼锎的难度非常高,技术不是十分完善,所以工厂生产的 ...

  5. ABOUT ME/OI回忆录

    \(ABOUT\ ME/OI回忆录\) 博主是一个退役的老菜鸡啦,学\(OI\)两年没搞过什么很厉害的东西,也没有做过很多题目,但是还是挺喜欢\(OI\)的. 在退役之后可能不会经常上博客园了,估计也 ...

  6. 七、新时间日期 API

    一.使用 LocalDate. LocalTime. LocalDateTime LocalDate. LocalTime. LocalDateTime 类的实例是不可变的对象,分别表示使用 ISO- ...

  7. soj1036. Crypto Columns

    1036. Crypto Columns Constraints Time Limit: 1 secs, Memory Limit: 32 MB Description The columnar en ...

  8. Python练习-装饰器版-为什么我的用户总被锁定

    参考代码如下: 1.用户登录程序流程控制代码: # 编辑者:闫龙 if __name__ == '__main__': import UserLoginFuncation LoclCount=[]; ...

  9. v4l2API无法执行VIDIOC_DQBUF的问题

    一.PC虚拟机下ubuntu14.04.1环境下 源文件:show.c  USB摄像头格式yuyv: 申请缓冲帧数2,分辨率640*480  阻塞无法执行 申请缓冲帧数4,分辨率640*480  阻塞 ...

  10. CSS line-height与行内框

    一.line-height的定义 line-height,行高,是指文本行基线间的垂直距离. 1.    什么是基线? 一般而言,一个文本行一共有四条线,从上到下依次为顶线.中线.基线.底线:在英文中 ...