python配置文件_读取Python配置文件的ini,python,之

ini配置文件读取

ini文件作为配置文件的常用度就不用多介绍了,

这里主要介绍一下python怎么读取ini内的配置信息

configparser使用

from configparser import ConfigParser

[注]: py3里是configParser, py2直接import ConfigParser

闲话不多说,直接上代码

源生的ConfigParser会将信息自动全部转换成小写,自定义类重载该函数,让其不做转换

class MyConfigParser(ConfigParser):

def __init__(self, defaults=None):

ConfigParser.__init__(self, defaults=defaults)

def optionxform(self, optionstr):

return optionstr

读取配置文件,生成配饰信息字典返回

def get_parameter():

config_dict = {}

conf = MyConfigParser()

for f in config_file:

if not conf.read(f, encoding="utf-8-sig"): # 此处是utf-8-sig,而不是utf-8

return {}

conf_dict = {s: {v: conf.get(s, v) for v in conf.options(s)} for s in conf.sections()}

# print(conf_dict)

return config_dict

这样就获取了配置信息的字典了,具体要再怎么操作就自由发挥喽

如ini配置文件

[sheetName]

;excel 数据表sheet名称

table=表

;excel 源数据sheet名称

data=原始数据

[tableType]

;数据表类型,line:折线,column:柱状图, pie:饼图

type=line

;y轴第二坐标基准

y2_axis=AtSpeed

lineColor=blue2:#5B9BD5;green2:#548235

lineWidth=2

[tableInfo]

;excel 数据表对应的信息

;表名 = 表中的数据项,各数据项折线显示的颜色,表的起点位置, 表的大小

弱磁ID={"names":["Udc","AtSpeed"],"colors":["green2","blue2"],"offset":[2,2], "size":[300,350]}

力矩输出={"names":["RealAp","AtSpeed"],"colors":["green2","blue2"],"offset":[2,310], "size":[300,350]}

读取结果

{

'sheetName': {'table': '表', 'data': '原始数据'},

'tableType': {'type': 'line',

'y2_axis': 'AtSpeed',

'lineColor':'blue2:#5B9BD5;green2:#548235',

'lineWidth': '2'},

'tableInfo': {'弱磁ID': '{"names":["Udc","AtSpeed"],

"colors":["green2","blue2"],

"offset":[2,2],

"size":[300,350]

},

'力矩输出':{"names":["RealAp","AtSpeed"],

"colors":["green2","blue2"],

"offset":[2,310],

"size":[300,350]

}

}

}

另外

因为读取到的全部是一个

字符串

的字典

所有内部自定义的字符串格式需要自己定义规则去解析,

为了方便使用,请尽量按python类型的规则来定义ini格式,这样就可以直接使用函数

eval函数

去解析字符串了

比如截取其中一段字符串字节转成字典:

eval('{"names":["Udc","AtSpeed"]}')

至于其它的功能,怎删改查ini文件请参考链接:

python之ini配置文件

实用小工具请参考资源文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值