python封装configparser模块获取conf.ini值
configparser模块是python自带的从文件中获取固定格式参数的模块,因为是python只带的,大家用的应该很多,我觉得这个参数模块比较灵活,添加参数、修改参数、读取参数等都有对应的参数供用户使用。因为本人看的都是接近自动化框架方面的,主要用读取参数,手动操作添加和修改参数也许更方便。
configparser模块读取的参数应该是不限文档格式:*.ini、*.conf、*.*,但是内容格式要按照固定格式来进行填写:
[section]
key = value
#路径参数
[path]
my_dir = D:\python\workspace\pythontest
log_path = %(my_dir)s\\log\\
img_path = %(my_dir)s\screenshot\
report_path = %(my_dir)s\\report\\ #邮箱参数
[email]
uesr =
password =
smtphost = smtp@.com
from = @.com
to = wadsad@qq.com #日志参数
[log]
logtime = #测试参数
[main]
ip = 109.132.19.7
port =
url = http://%(ip)s:%(port)s/tes
封装后的代码:
#coding:utf-8
import ConfigParser
import os class ReadConfig(object):
'''配置参数'''
def __init__(self):
'''
用法:
conf = ReadConfig()
confinfo = conf.getconf("url")
'''
#设置conf.ini路径
current_dir = os.path.dirname(__file__)
top_one_dir = os.path.dirname(current_dir)
file_name = top_one_dir + "\\conf\\conf.ini"
#实例化ConfigParser对象
self.config = ConfigParser.ConfigParser()
self.config.read(file_name) def getconf(self, keyname):
num = len( self.config.sections() )
i = 0
print("num = ",num)
#根据sections的数量进行循环查找keyname是否存在
while i < num :
# 每次循环获取对应list中的section
section = self.config.sections()[i]
#如果keyname存在section中,则输出其参数值
if keyname in self.config.options(section):
pass
print("num --> ",i)
print("section --->",section)
print("keyname ---> ", keyname)
self.info = self.config.get(section, keyname)
break
else :
i = i + 1
else :
print("ReadConfig()没有找到config文件对应的key")
return self.info if __name__ == "__main__":
conf = ReadConfig()
confinfo = conf.getconf("url")
print("config --- >",confinfo)
一开始本想通过section值获取对应的key以及value,但是试了很多次都不成功。原设想:
conf = ReadConfig()
confinfo = conf.getconf("main").url
main为section,url为key。
但是这种通过key获取参数value的方法也可以实现我的目的。
conf = ReadConfig()
confinfo = conf.getconf("url")
url为key
运行结果:

ini文件存放在pythontest/conf下
封装后的py文件存放在pythontest/commlib下

python封装configparser模块获取conf.ini值的更多相关文章
- python封装configparser模块获取conf.ini值(优化版)
昨天晚上封装了configparser模块,是根据keyname获取的value.python封装configparser模块获取conf.ini值 我原本是想通过config.ini文件中的sect ...
- python中configparser模块读取ini文件
python中configparser模块读取ini文件 ConfigParser模块在python中用来读取配置文件,配置文件的格式跟windows下的ini配置文件相似,可以包含一个或多个节(se ...
- Python使用ConfigParser模块读取配置文件(config.ini)以及写入配置文件
前言 使用配置文件来灵活的配置一些参数是一件很常见的事情,配置文件的解析并不复杂,在python里更是如此,在官方发布的库中就包含有做这件事情的库,那就是configParser.configPars ...
- python中confIgparser模块学习
python中configparser模块学习 ConfigParser模块在python中用来读取配置文件,配置文件的格式跟windows下的ini配置文件相似,可以包含一个或多个节(section ...
- Python中ConfigParser模块应用
Python中ConfigParser模块应用 Python的ConfigParser模块定义了3个对INI文件进行操作的类 RawConfigParser.ConfigParser和SafeConf ...
- python 的ConfigParser模块
Python 之ConfigParser模块 一.ConfigParser简介 ConfigParser 是用来读取配置文件的包.配置文件的格式如下:中括号“[ ]”内包含的为section.sect ...
- python使用wmi模块获取windows下的系统信息监控系统-乾颐堂
Python用WMI模块获取Windows系统的硬件信息:硬盘分区.使用情况,内存大小,CPU型号,当前运行的进程,自启动程序及位置,系统的版本等信息. 本文实例讲述了python使用wmi模块获取w ...
- Python自动化测试 -ConfigParser模块读写配置文件
C#之所以容易让人感兴趣,是因为安装完Visual Studio, 就可以很简单的直接写程序了,不需要做如何配置. 对新手来说,这是非常好的“初体验”, 会激发初学者的自信和兴趣. 而有些语言的开发环 ...
- python中configparser模块记录
python中用来读取配置文件,配置文件的格式相同于windows下的ini配置文件 一.常用函数 read(filename) #读取配置文件,直接读取ini文件内容 sections() #获取i ...
随机推荐
- 四十二、在线预览pdf文件
//文档在线观看 checkWoc(type, id, taskId, smsId, stsId) { if(type == "zip" || type == "7z&q ...
- codeblocks-17.12mingw-nosetup(mingw编译,绿色免安装版)的下载、安装及设置一
一.先进入网址:http://www.codeblocks.org/downloads/,选择Download the binary release. 二.转换网页后,选择codeblocks-17. ...
- 使用队列实现栈(2)(Java)
class MyStack { private Queue q1; private Queue q2; public MyStack(int size) { this.q1 = new Queue(s ...
- Unity编辑器扩展
在开发中有可能需要自己开发编辑器工具,在Unity中界面扩展常见两种情况,拿某插件为例: 1,自建窗口扩展 2,脚本Inspector显示扩展 不管使用那种样式,都需要经常用到两个类EditorGUI ...
- 滴滴 CTO 架构师 业务 技术 战役 时间 赛跑 超前 设计
滴滴打车CTO张博:生死战役,技术和时间赛跑-CSDN.NEThttps://www.csdn.net/article/2015-06-25/2825058-didi 滴滴出行首席架构师李令辉:业务的 ...
- Spring Cloud Netflix vs Spring Cloud Alibaba
Spring Cloud Netflixhttps://spring.io/projects/spring-cloud-netflix spring-cloud-alibaba/README-zh.m ...
- MTK刷机快捷键
彻底关机后按住音量下键,连接电脑 无法关机的情况下按住音量上+电源键,手机黑屏后松开电源键,连接电脑,出现进度条后松开音量上键
- IntelliJ IDEA 2018 最新版注册码
参考:IntelliJ IDEA 2018注册码(无需修改hosts文件) :
- js slice 假分页
语法 arrayObject.slice(start,end) 参数 描述 start 必需.规定从何处开始选取.如果是负数,那么它规定从数组尾部开始算起的位置.也就是说,-1 指最后一个元素,-2 ...
- java web 三大组件
JavaWeb三大组件 Servlet,Filter,Listener. Servlet Servlet的作用 在Java web b/s架构中,servlet扮演了重要的角色,作为一个中转处理的容器 ...