python ConfigParser读取文件不存在

时间:2013-08-06 21:17:14

标签: python exception exception-handling configparser

import ConfigParser
config = ConfigParser.ConfigParser()
config.read('test.ini')

这是我们在Python中读取配置文件的方式。但如果'test.ini'不存在怎么办?为什么这个方法不会抛出异常?

如果文件不存在,如何使它抛出异常?

2 个答案:

答案 0 :(得分:16)

您也可以明确地将其作为文件打开。

try:
    with open('test.ini') as f:
        config.readfp(f)
except IOError:
    raise MyError()

编辑:添加了缺失的'

答案 1 :(得分:15)

来自docs

  

如果不存在任何命名文件,则ConfigParser实例将存在   包含一个空数据集。

如果您想在未找到任何文件的情况下引发错误,则可以尝试:

files = ['test1.ini', 'test2.ini']
dataset = config.read(files)
if len(dataset) != len(files):
    raise ValueError, "Failed to open/find all files"