【python库】ini文件的读取

ini配置文件读取,可以使用python的configparse这个库。
我的代码是在WIN10 + Python 3.6.5下运行。

准备一个ini文件

我们在桌面准备一个INI文件,叫test.ini,内容如下:

[db]  # 这个叫section
host=test # 这个叫option
user=user1  # 这个叫option

[java] # 这个叫section
uri=http://www.baidu.com  # 这个叫option

[default] # 这个叫section
host=default_host  # 这个叫option
user=default_user  # 这个叫option
uri=default_uri  # 这个叫option

注意我的注释#后面的是注释,[]这种类型的叫section,里面的内容就叫option

读取

我们在的代码运行的目录和桌面(也就是test.ini)在同一级目录下。

In [1]: from configparser import ConfigParser

In [2]: cf = ConfigParser()

In [3]: f = open('test.ini')

In [4]: cf.read_file(f)

In [5]: cf.sections()
Out[5]: ['db', 'java', 'default']

In [6]: cf.options('db')
Out[6]: ['host', 'user']

In [7]: cf.options('java')
Out[7]: ['uri']

In [8]: cf.get('db', 'user')
Out[8]: 'user1'

In [9]: cf.has_section('db')
Out[9]: True

In [10]: cf.has_section('db1')
Out[10]: False

In [11]: cf.has_option('db', 'user')
Out[11]: True

In [12]: cf.has_option('db', 'uri')
Out[12]: False

如果按照目前的配置,如果去读取一个section,但是option不存在的情况,是会报错的,如果我们想ini文件的default配置生效(也就是,如果读取的option不在section里面,但是在default里面),我们必须把default设置为大写,如下:

[db]
host=test
user=user1

[java]
uri=http://www.baidu.com

[DEFAULT]
host=default_host
user=default_user
uri=default_uri

如果去读取db这个section下的uri,那么会返回DEFAULT下的uri,也就是default_uri这个值。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值