Tshepang Tshepang - 1 year ago 124
Python Question

Why is there {Raw,Safe}ConfigParser in Python 3?

Am surprised there's 3 different forms:

(docs). I read the differences but why isn't everyone using
, since it seems, well, safe? I can understand that in the case for Python 2 that the other two were kept for backward compatibility.

UPDATE: In Python 3.2, SafeConfigParser has been renamed to ConfigParser, and the old ConfigParser has been removed (source: NEWS for Python 3.2).

Answer Source

In short, use configparser.SafeConfigParser.

To quote the docs, SafeConfigParser "implements a more-sane variant of the magical interpolation feature. This implementation is more predictable as well. New applications should prefer this version if they don’t need to be compatible with older versions of Python."

It seems that the old ConfigParser still exists in Python 3 for backwards compatibility: not everything was made backward-incompatible!

Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download