π§ ΠΠ°ΠΊ ΠΈΠ·Π±Π°Π²ΠΈΡΡΡΡ ΠΎΡ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠΉ Π² Python: ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ
ΠΠ°ΠΊ ΡΠ±ΡΠ°ΡΡ Π²Π°ΡΠ½ΠΈΠ½Π³ΠΈ python
Π§ΡΠΎΠ±Ρ ΡΠ±ΡΠ°ΡΡ Π²Π°ΡΠ½ΠΈΠ½Π³ΠΈ Python, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Ρ:
- ΠΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π²Π°ΡΠ½ΠΈΠ½Π³ΠΎΠ²
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠ»Π°Π³-W ignore
ΠΈΠ»ΠΈ-W ignore::DeprecationWarning
ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ Π²Π°ΡΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
python -W ignore::DeprecationWarning my_script.py
- ΠΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°
ΠΠ½Π°Π»ΠΈΠ·ΠΈΡΡΠΉΡΠ΅ Π²Π°ΡΠ½ΠΈΠ½Π³ΠΈ ΠΈ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΠΉΡΠ΅ ΠΌΠ΅ΡΡ ΠΏΠΎ ΠΈΡ ΡΡΡΡΠ°Π½Π΅Π½ΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Π²Π°Ρ ΠΊΠΎΠ΄ Π²ΡΠ·ΡΠ²Π°Π΅Ρ Π²Π°ΡΠ½ΠΈΠ½Π³ ΠΎΠ± ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΡΡΡΠ°ΡΠ΅Π²ΡΠ΅Π³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π°, ΠΎΠ±Π½ΠΎΠ²ΠΈΡΠ΅ ΠΊΠΎΠ΄, ΡΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄. ΠΡΠΈΠΌΠ΅Ρ:
import warnings
warnings.filterwarnings("ignore", category=DeprecationWarning)
# ΠΠ°Ρ ΠΊΠΎΠ΄ Π²ΡΠ·ΡΠ²Π°ΡΡΠΈΠΉ Π²Π°ΡΠ½ΠΈΠ½Π³
- ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ
ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ²
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π° ΠΊΠΎΠ΄Π°, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ PyLint ΠΈΠ»ΠΈ Flake8, ΡΡΠΎΠ±Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΡΡ ΠΈ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ Π²Π°ΡΠΈΠΌ ΠΊΠΎΠ΄ΠΎΠΌ.
ΠΠ΅ΡΠ°Π»ΡΠ½ΡΠΉ ΠΎΡΠ²Π΅Ρ
ΠΠ°ΠΊ ΡΠ±ΡΠ°ΡΡ Π²Π°ΡΠ½ΠΈΠ½Π³ΠΈ Python
Python - ΡΡΠΎ ΠΌΠΎΡΠ½ΡΠΉ ΠΈ Π³ΠΈΠ±ΠΊΠΈΠΉ ΡΠ·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ². ΠΠ΄Π½Π°ΠΊΠΎ ΠΏΡΠΈ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈ ΠΊΠΎΠ΄Π° ΠΈΠ½ΠΎΠ³Π΄Π° Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ (warnings), ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½Π° ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΈΠ»ΠΈ Π½Π΅Π΄ΠΎΡΠ΅ΡΡ. Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊ ΡΠ±ΡΠ°ΡΡ Π²Π°ΡΠ½ΠΈΠ½Π³ΠΈ Π² Python ΠΈ ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΠΈΡ .
1. ΠΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π²Π°ΡΠ½ΠΈΠ½Π³ΠΎΠ² Python
ΠΠ°ΡΠ½ΠΈΠ½Π³ΠΈ (warnings) - ΡΡΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΎΡΠΈΠ±ΠΎΠΊ ΠΈΠ»ΠΈ ΠΎΡΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΡ ΠΎΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΠΌΡΡ ΠΏΡΠ°ΠΊΡΠΈΠΊ. ΠΠ½ΠΈ Π½Π΅ ΡΠ²Π»ΡΡΡΡΡ ΠΎΡΠΈΠ±ΠΊΠ°ΠΌΠΈ, Π½ΠΎ Π²ΡΠ΅ ΠΆΠ΅ ΠΌΠΎΠ³ΡΡ ΡΡΠ΅Π±ΠΎΠ²Π°ΡΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°. ΠΠ°ΡΠ½ΠΈΠ½Π³ΠΈ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π²ΡΠ·Π²Π°Π½Ρ ΡΠ°Π·Π½ΡΠΌΠΈ ΠΏΡΠΈΡΠΈΠ½Π°ΠΌΠΈ, ΡΠ°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ ΡΡΡΠ°ΡΠ΅Π²ΡΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ, Π½Π΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ ΠΊΠΎΠ΄, Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΉ, ΠΈ Π΄ΡΡΠ³ΠΈΠ΅.
2. ΠΠΏΡΠΈΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ
Python ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΎΠΏΡΠΈΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΡΠΏΡΠ°Π²Π»ΡΡΡ Π²ΡΠ²ΠΎΠ΄ΠΎΠΌ Π²Π°ΡΠ½ΠΈΠ½Π³ΠΎΠ². ΠΠ΄ΠΈΠ½ ΠΈΠ· ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² - ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ»Π°Π³Π° -W
Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ.
2.1. -W ignore
Π€Π»Π°Π³ -W ignore
ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΠ΅ Π²Π°ΡΠ½ΠΈΠ½Π³ΠΈ, Π²ΡΠ²ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΎΠΉ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
python -W ignore script.py
Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π΅Π½, ΠΊΠΎΠ³Π΄Π° Π²Ρ ΡΠ²Π΅ΡΠ΅Π½Ρ, ΡΡΠΎ Π²Π°ΡΠ½ΠΈΠ½Π³ΠΈ Π½Π΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ° ΠΈΠ»ΠΈ Π²Ρ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Π½Π΅ Ρ ΠΎΡΠΈΡΠ΅ ΠΈΠΌΠΈ Π·Π°Π½ΠΈΠΌΠ°ΡΡΡΡ.
2.2. -W default
Π€Π»Π°Π³ -W default
Π²ΠΎΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΠ° Python ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ. Π’ΠΎ Π΅ΡΡΡ, Π²Π°ΡΠ½ΠΈΠ½Π³ΠΈ Π±ΡΠ΄ΡΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ ΠΈΡ
ΡΡΠΎΠ²Π½Π΅ΠΌ ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΠΌΠΈ.
2.3. -W error
Π€Π»Π°Π³ -W error
ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΡΠ΅Π²ΡΠ°ΡΠΈΡΡ Π²Π°ΡΠ½ΠΈΠ½Π³ΠΈ Π² ΠΎΡΠΈΠ±ΠΊΠΈ. ΠΡΠ»ΠΈ Π² ΠΊΠΎΠ΄Π΅ Π΅ΡΡΡ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ, ΠΎΠ½ΠΈ Π±ΡΠ΄ΡΡ Π²ΡΠ·ΡΠ²Π°ΡΡ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΈ ΠΏΡΠ΅ΡΡΠ²Π°ΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ.
3. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ warnings
Python ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΌΠΎΠ΄ΡΠ»Ρ warnings
, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π±ΠΎΠ»Π΅Π΅ ΡΠΎΠ½ΠΊΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ Π²Π°ΡΠ½ΠΈΠ½Π³ΠΎΠ² Π² ΠΊΠΎΠ΄Π΅. ΠΠΎΠ΄ΡΠ»Ρ warnings
ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈ ΠΊΠ»Π°ΡΡΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡΠΌΠΈ, Π²ΠΊΠ»ΡΡΠ°Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΡΠΊΠ»ΡΡΠΈΡΡ ΠΈΠ»ΠΈ ΡΠΈΠ»ΡΡΡΠΎΠ²Π°ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ Π²ΠΈΠ΄Ρ Π²Π°ΡΠ½ΠΈΠ½Π³ΠΎΠ².
3.1. ΠΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π²Π°ΡΠ½ΠΈΠ½Π³ΠΎΠ²
Π§ΡΠΎΠ±Ρ ΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°ΡΡ Π²Π°ΡΠ½ΠΈΠ½Π³ΠΈ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ
Π±Π»ΠΎΠΊΠΎΠ² ΠΊΠΎΠ΄Π°, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ½ΡΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ warnings.catch_warnings()
. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
import warnings
with warnings.catch_warnings():
warnings.simplefilter("ignore")
# ΠΠ°ΡΠΈ Π±Π»ΠΎΠΊ ΠΊΠΎΠ΄Π°, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°ΡΡ Π²Π°ΡΠ½ΠΈΠ½Π³ΠΈ
3.2. ΠΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Π²Π°ΡΠ½ΠΈΠ½Π³ΠΎΠ² Π² ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ
ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ warnings.filterwarnings()
Π΄Π»Ρ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ Π²ΡΠ±ΡΠ°Π½Π½ΡΡ
Π²Π°ΡΠ½ΠΈΠ½Π³ΠΎΠ² Π² ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄ Π²ΡΠ·ΠΎΠ²Π΅Ρ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ DeprecationWarning
:
import warnings
warnings.filterwarnings("error", category=DeprecationWarning)
# ΠΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΡΠ·ΡΠ²Π°Π΅Ρ DeprecationWarning, Π²ΡΠ·ΠΎΠ²Π΅Ρ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
3.3. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ ΡΠΈΠ»ΡΡΡΠΎΠ² Π²Π°ΡΠ½ΠΈΠ½Π³ΠΎΠ²
ΠΠΎΠ΄ΡΠ»Ρ warnings
ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΡΠΈΠ»ΡΡΡΡ Π²Π°ΡΠ½ΠΈΠ½Π³ΠΎΠ² Π΄Π»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈΡ
Π½Π° Π²Π°ΡΠ΅ ΡΡΠΌΠΎΡΡΠ΅Π½ΠΈΠ΅. ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ ΠΏΡΠΈΠΌΠ΅Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠΈΠ»ΡΡΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΡΡΠΎ ΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΠ΅ Π²Π°ΡΠ½ΠΈΠ½Π³ΠΈ:
import warnings
def ignore_warnings(message, category, filename, lineno, file=None, line=None):
pass
warnings.simplefilter("ignore", category=Warning)
warnings.showwarning = ignore_warnings
# ΠΡΠ΅ Π²Π°ΡΠ½ΠΈΠ½Π³ΠΈ Π±ΡΠ΄ΡΡ ΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°ΡΡΡΡ
4. ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ Π²Π°ΡΠ½ΠΈΠ½Π³ΠΎΠ²
ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ Π²Π°ΡΠ½ΠΈΠ½Π³ΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΠΏΠΎΠ»Π΅Π·Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΡ Π²Ρ Π½Π΅ Ρ
ΠΎΡΠΈΡΠ΅ ΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°ΡΡ. ΠΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΈΡ
Π² ΠΊΠΎΠ΄Π΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ ResourceWarning
:
import warnings
def handle_resource_warning(message, category, filename, lineno, file=None, line=None):
# ΠΠ°ΡΠ° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π²Π°ΡΠ½ΠΈΠ½Π³Π°
print(f"ΠΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅: {message}")
warnings.simplefilter("always", category=ResourceWarning)
warnings.showwarning = handle_resource_warning
# ΠΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΡΠ·ΡΠ²Π°Π΅Ρ ResourceWarning, Π±ΡΠ΄Π΅Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π½
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΠΎΡΠ²Π΅ΡΠΈΠ»ΠΈ, ΠΊΠ°ΠΊ ΡΠ±ΡΠ°ΡΡ Π²Π°ΡΠ½ΠΈΠ½Π³ΠΈ Π² Python ΠΈ ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΠΈΡ
. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠΏΡΠΈΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, ΠΌΠΎΠ΄ΡΠ»Ρ warnings
ΠΈΠ»ΠΈ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π°ΡΠ½ΠΈΠ½Π³Π°ΠΌΠΈ. ΠΠ°ΠΆΠ½ΠΎ Π·Π°Π±ΠΎΡΠΈΡΡΡΡ ΠΎ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡΡ
, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½Π° ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π² Π²Π°ΡΠ΅ΠΌ ΠΊΠΎΠ΄Π΅. ΠΠΎ ΠΏΠΎΠΌΠ½ΠΈΡΠ΅, ΡΡΠΎ ΠΈΠ½ΠΎΠ³Π΄Π° Π²Π°ΡΠ½ΠΈΠ½Π³ΠΈ ΠΏΠΎΠ»Π΅Π·Π½Ρ ΠΈ ΠΌΠΎΠ³ΡΡ ΠΏΠΎΠΌΠΎΡΡ ΡΠ΄Π΅Π»Π°ΡΡ Π²Π°Ρ ΠΊΠΎΠ΄ Π±ΠΎΠ»Π΅Π΅ Π½Π°Π΄Π΅ΠΆΠ½ΡΠΌ ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡΠΌ.