Хеллман Д. Стандартная библиотека Python 3, глава 1:
«Отсутствие в словаре значения для переменной missing приводит к тому, что метод substitute() возбуждает исключение KeyError. В то же время метод safe substitute() вместо возбуждения исключения перехватывает его и оставляет в тексте само выражение переменной».
«Ключевым отличием шаблонов от строковых подстановок (интерполяции) и форматирования с помощью метода format() является то, что они не учитывают тип аргументов. Значения преобразуются в строки, а строки вставляются в результат. Опции форматирования полностью отсутствуют. Например, не существует способа управлять количеством цифр, используемых для представления значений с плавающей запятой.
Однако шаблоны обладают тем неоспоримым преимуществом, что использование их метода safe_substitute() позволяет избежать возникновения исключений в тех случаях, когда не все значения, в которых нуждаются шаблоны, представлены
аргументами».
Post #4125
926
- 👍 1
- 👎 1