2010-05-17 2 views
9

Удивительно, что существует 3 различных формы: RawConfigParser, SafeConfigParser и ConfigParser (docs). Я читал разницу, но почему не все используют SafeConfigParser, так как кажется, ну, безопасно? Я могу понять, что в случае Python 2, что два других были сохранены для обратной совместимости.Почему существует {Raw, Safe} ConfigParser в Python 3?

UPDATE: В Python 3.2, SafeConfigParser был переименован в ConfigParser, а старый ConfigParser был удален (источник: NEWS for Python 3.2).

ответ

6

Одним словом, используйте configparser.SafeConfigParser.

Для цитирования the docs, SafeConfigParser "реализует более разумный вариант функции магической интерполяции. Эта реализация также более предсказуема. Новые приложения должны предпочесть эту версию, если они не должны быть совместимы со старыми версиями Python «.

Похоже, что старый ConfigParser все еще существует в Python 3 для обратной совместимости: не все было сделано обратно-несовместимым!

Смежные вопросы