Я работаю с кодом, который выдает много (на данный момент для меня) бесполезных предупреждений, используя warnings библиотеку. Читая (/ сканируя) документацию, я нашел только способ отключить предупреждения для отдельных функций. Но я не хочу менять так много кода.
Есть ли такой флаг, как python -no-warning foo.py?
Если вы используете код, который, как вы знаете, выдаст предупреждение, например, об устаревшей функции, но не хотите видеть предупреждение, то его можно отключить с помощью catch_warnings диспетчера контекста:
with warnings.catch_warnings(): warnings.simplefilter("ignore") fxn()
# Or if you are using > Python 3.11: with warnings.catch_warnings(action="ignore"): fxn()
Я не одобряю это, но вы могли бы просто подавить все предупреждения с помощью этого:
import warnings warnings.filterwarnings("ignore")
Пример:
>>> import warnings >>> deff(): ... print('before') ... warnings.warn('you are warned!') ... print('after') ... >>> f() before <stdin>:3: UserWarning: you are warned! after >>> warnings.filterwarnings("ignore") >>> f() before after