Python 3中{Raw,Safe}ConfigParser有什么用?
我很惊讶居然有三种不同的形式:RawConfigParser
、SafeConfigParser
和ConfigParser
(文档)。我看过它们的区别,但我不明白为什么大家不都用SafeConfigParser
,因为它看起来很安全嘛?我能理解在Python 2的情况下,另外两个是为了向后兼容而保留的。
更新:在Python 3.2中,SafeConfigParser
被重命名为ConfigParser
,而旧的ConfigParser
被移除了(来源:Python 3.2的新特性)。
1 个回答
13
简单来说,使用 configparser.SafeConfigParser
。
根据文档的说法,SafeConfigParser "实现了一种更合理的魔法插值功能。这种实现方式更可预测。如果新应用程序不需要与旧版本的Python兼容,应该优先使用这个版本。"
看起来旧版的ConfigParser在Python 3中仍然存在,是为了兼容老版本:并不是所有东西都不兼容了!