14.7.3.1 测试值是否存在
要测试一个节是否存在,可以使用has_section(),并传入节名作为方法参数。
from configparser import ConfigParser
parser = ConfigParser()
parser.read('multisection.ini')
for candidate in ['wiki','bug_tracker','dvcs']:
print('{:<12}:{}'.format(
candidate,parser.has_section(candidate)))
调用get()之前先测试已给节是否存在,这样可以避免因为缺少数据而导致产生异常。
使用has_option()可以测试一个节中某个选项是否存在。
from configparser import ConfigParser
parser = ConfigParser()
parser.read('multisection.ini')
SECTIONS = ['wiki','none']
OPTIONS = ['username','password','url','description']
for section in SECTIONS:
has_section = parser.has_section(section)
print('{} section exists: {}'.format(section,has_section))
for candidate in OPTIONS:
has_option = parser.has_option(section,candidate)
print('{}.{:<12} : {}'.format(
section,candidate,has_option))
print()
如果节不存在,那么has_option()会返回False。