use*_*941 13 python boolean configparser
这是我的示例脚本:
import ConfigParser
config = ConfigParser.ConfigParser()
config.read('conf.ini')
print bool(config.get('main', 'some_boolean'))
print bool(config.get('main', 'some_other_boolean'))
Run Code Online (Sandbox Code Playgroud)
这是conf.ini
:
[main]
some_boolean: yes
some_other_boolean: no
Run Code Online (Sandbox Code Playgroud)
运行脚本时,它会打印True
两次.为什么?它应该是False
,如some_other_boolean
设置的那样no
.
Joh*_*ica 27
用途getboolean()
:
print config.getboolean('main', 'some_boolean')
print config.getboolean('main', 'some_other_boolean')
Run Code Online (Sandbox Code Playgroud)
从Python手册:
Run Code Online (Sandbox Code Playgroud)RawConfigParser.getboolean(section, option)
一种便捷方法,它将指定部分中的选项强制转换为布尔值.请注意,该选项的可接受值为"1","yes","true"和"on",这会导致此方法返回True,并且"0","no","false"和"off" ",导致它返回False.以不区分大小写的方式检查这些字符串值.任何其他值都会导致它引发ValueError.
在bool()
构造一个空字符串转换为False.非空字符串为True.bool()
没有为"假","不"等做任何特别的事情.
>>> bool('false')
True
>>> bool('no')
True
>>> bool('0')
True
>>> bool('')
False
Run Code Online (Sandbox Code Playgroud)