Python读配置文件(json)

选择适合自己的文件格式

尝试了ini和json,选择了json。读json后可以赋值给字典变量,结构更灵活,同时方便对无效参数预处理。
这两个库不需要安装import后可以直接用

读ini

import configparser

读json

import json

有些老师推荐我使用yaml和toml,尤其是toml,可读性更好,但我考虑到这两个需要三方库支持,为了比较不必要的麻烦。ini不适合保存复杂的结构,所以我最后还是选择了json,适合自己的是最好的。

读json格式配置文件的具体操作

注意:json中有中文,读文件时要选择相应的字符集

比如下面示例中的json文件中包有中文,而且GBK

附:config.json的内容

注意:要用用双引号

{
  "学生": {
    "N01": {
      "姓名": "张三",
      "年龄": 19
    },
    "N02": {
      "姓名": "张三",
      "年龄": 19
    }
  }
}

读配置文件

 解读:encoding='GBK',GBK是json文件的字符集,这里要与json文件保持一致,无需指定py文件的字符集,会自动转换

'''
读配置文件,建议用json,可以赋值给字典变量,结构更灵活,同时方便对无效参数预处理
'''
import json

with open('config.json', 'r', encoding='GBK') as config_j:
    cfg=json.load(config_j)
print(cfg)
print(cfg.get('老师','无效参数'))
print(cfg['学生'].get('N03',{'姓名':'未登记','年龄':'未知'}))
'''
#输出结果
{'学生': {'N01': {'姓名': '张三', '年龄': 19}, 'N02': {'姓名': '张三', '年龄': 19}}}
无效参数
{'姓名': '未登记', '年龄': '未知'}

'''

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值