tgoop.com/zen_of_python/4176
Create:
Last Update:
Last Update:
t-строки: что это и чем отличаются от f-строк?
t-строки (template strings), предложенные в PEP 750, — новый механизм безопасной интерполяции строк. В отличие от f-собрата, t-строка не создает обычный string, а возвращает объекты шаблонов, которые можно безопасно обрабатывать, не боясь вредоносных SQL-инъекций.
t-строки автоматически экранируют вставляемые значения, предотвращая инъекции команд или SQL. Они возвращают специальные объекты, которые можно передавать в функции, поддерживающие шаблоны, обеспечивая дополнительную безопасность.
PEP 787 дал возможность использовать такое в модулях subprocess
и shlex
, включая новую функцию sh()
для безопасной сборки командной строки.
from shlex import sh
from subprocess import run
user_input = "some file.txt"
run(sh(t"cat {user_input}"))
Хотя t-строки обеспечивают безопасность, они требуют поддержки со стороны функций и библиотек. Например, попытка передать t-строку в функцию, ожидающую обычную строку, вызовет ошибку. Кроме того, интеграция t-строк в subprocess отложена до Python 3.15 из-за сложностей с кроссплатформенной реализацией.
#основы
@zen_of_python
BY Zen of Python

Share with your friend now:
tgoop.com/zen_of_python/4176