python configparser 空格_python的ConfigParser模块
简介
ConfigParser模块在python3中修改为configparser.这个模块定义了一个ConfigParser类,该类的作用是使用配置文件生效,配置文件的格式和windows的INI文件的格式相同
该模块的作用 就是使用模块中的RawConfigParser()、ConfigParser()、 SafeConfigParser()这三个方法,创建一个对象使用对象的方法对指定的配置文件做增删改查 操作。
配置文件有不同的片段组成和Linux中repo文件中的格式类似:
格式:
[section]
name=value
或者
name: value
"#" 和";" 表示注释
[DEFAULT] #设置默认的变量值,初始化
[My Section]
foodir: %(dir)s/whatever
dir=frob
long: this value continues
in the next line
方法
下面这三种方式使用时,切记注意
在调用这三个函数时,切记这三个函数会将调用optionxform(),在传递键值对数据时,会将键名全部转化为小写。
RawConfigParser()
ConfigParser.RawConfigParser([defaults[, dict_type[, allow_no_value]]])
defaults : 如果指定默认值,则使用默认值的键值对
dict_type:使用新的section的键值对
allow_no_value :默认是False,如果是True,表示可以接收空值(None)
return:对象
不支持可变参数,在section中不能存在%()s
ConfigParser()
ConfigParser.ConfigParser([defaults[, dict_type[, allow_no_value]]])
在default中必须出现%()s
SafeConfigParser()
ConfigParser.SafeConfigParser([defaults[, dict_type[, allow_no_value]]])
更加智能化,在section中是否存在%()s会自动判断
传递参数使用函数optionxform(),foo %(bar)s 和 foo %(BAR)s是相同的,optionxform()会将大写字母全部转换为小写。
解决自动小写的问题
>>> custom = configparser.RawConfigParser()
>>> custom.optionxform = lambda option: option
>>> custom.read_string(config)
或者
>>> cfgparser = ConfigParser()
>>> cfgparser.optionxform = str
注意:在读取配置文件时,在调用optionxform()之前,选项名称周围的空格将被去掉。
或者重写函数
class MyConfigParser(configparser.ConfigParser):
def optionxform(self, optionstr):
return optionstr
config = MyConfigParser()
ConfigParser常用参数
config = conf.ConfigParser(allow_no_value=True,inline_comment_prefixes=('#', ';'),empty_lines_in_values=False)
python configparser 空格_python的ConfigParser模块相关推荐
- python 去掉空格_Python去除多余空格
原博文 2017-06-10 13:47 − 今天做爬虫时.发现结果中好多多余的空格.然后有强迫症的我当然不会放过 " xyz ".strip() # returns " ...
- python psycopg2使用_Python中用psycopg2模块操作PostgreSQL方法
其实在Python中可以用来连接PostgreSQL的模块很多,这里比较推荐psycopg2.psycopg2安装起来非常的简单(pip install psycopg2),这里主要重点介绍下如何使用 ...
- c调用python第三方库_Python使用ctypes模块调用DLL函数之C语言数组与numpy数组传递...
在Python语言中,可以使用ctypes模块调用其它如C++语言编写的动态链接库DLL文件中的函数,在提高软件运行效率的同时,也可以充分利用目前市面上各种第三方的DLL库函数,以扩充Python软件 ...
- python 主线程_Python threading多线程模块
Python是支持使用多线程的,程序代码可以在一个进程空间中操作管理多个执行的线程,python模块下载时要记得,这个库叫做 threading. 一.threading模块简介 在Python多线程 ...
- python正则表达式空格_python中的正则表达式的使用
一.正则表达式简介 正则表达式:又称正规表示式.正规表示法.正规表达式.规则表示式.常规表示法(英语:Regular Expression,在代码中常简写为regex.regexp或者是RE),是计算 ...
- python 正则 空格_python 正则详解
正则表达式概述 正则表达式,又称正规表示式.正规表示法.正规表达式.规则表达式.常规表示法(英语:Regular Expression,在代码中常简写为regex.regexp或RE),是计算机科学的 ...
- python requests 示例_python的requests模块实现登陆示例
51cto用python的requests模块实现登陆示例代码如下: -- coding:utf-8 -- import requests import re client = requests.se ...
- python阿里巴巴排名_python使用urllib模块和pyquery实现阿里巴巴排名查询
python pyquery不能有空格吗 看地方吧 pyquery库是jQuery的Python实现,可以用于解析HTML网页内容,我个人写过的一些抓取网页数据的脚本就是用它来解析html获取数据的. ...
- python schedule多线程_Python定时任务sched模块用法示例
本文实例讲述了Python定时任务sched模块用法.分享给大家供大家参考,具体如下: 通过sched模块可以实现通过自定义时间,自定义函数,自定义优先级来执行函数. 范例一 import time ...
最新文章
- 免费教材丨第51期:数学基础课程----概率论教程、机器学习中的数学基础
- 极客Web前端开发资源大荟萃#007
- python绘制雷达图代码实例-PYTHON绘制雷达图代码实例
- 【Qt】Qt中QJsonArray类
- Kernel中如何操作CPU及外设寄存器
- vscode 连接docker_在VS Code中使用带Docker容器的Java开发环境 – Bruno Borge
- java se开发_JAVA_SE基础——3.Java程序的开发流程
- 【转】Oracle 系统权限详细列表
- 接口的显式实现与隐式实现
- java位图_Java 位图法排序的使用方法
- matlab阶跃响应_状态空间模型及MATLAB指令计算
- android apk 病毒,apk文件是病毒吗
- linux展示文件最尾部内容 最新,LINUX tailf命令-显示文件的末尾若干行内容
- 数字转人民币大写,PHP实现
- 智能营销增益模型(Uplift Modeling)实践整理
- VS2010添加WP模板
- Java实现 LeetCode 37 解数独
- 转战物联网·基础篇01-物联网之我见
- 从SpriteKit看我的游戏人生
- [转]deepin系统添加开机运行命令、软件自启动方法