У меня есть следующие два файла:
main.py :
import module
deprecated = '\s'
module.py :
deprecated = '\s'
Когда я запускаю следующую команду:
python3.7 -W always main.py
я получаю этот вывод:
main.py:2: DeprecationWarning: invalid escape sequence \s
deprecated = '\s'
module.py:1: DeprecationWarning: invalid escape sequence \s
deprecated = '\s'
и когда я запускаю команду во второй раз, я получаю этот вывод:
main.py:2: DeprecationWarning: invalid escape sequence \s
deprecated = '\s'
Ожидается первый вывод (нераспознанные escape-последовательности выдают предупреждение начиная с Python 3.6), но я не понимаю, почему предупреждения, вызываемые кодом в импортированных модулях, при последовательных выполнениях отключаются.
- Это ожидаемое поведение?
- Что можно сделать, чтобы печатать эти предупреждения каждый раз?