Python Glossary English

все Python 3sysфункция

sys.getprofile()

отладка и трассировка

Возвращает функцию профилирования, установленную через sys.setprofile(), или None — например, чтобы временно подменить её и потом вернуть.

Синтаксис

sys.getprofile()

Профилировщик и трассировщик — два разных слота: getprofile() не видит того, что поставлено через settrace(), и наоборот. cProfile с Python 3.12 работает через sys.monitoring, поэтому под ним getprofile() возвращает None — слот видит только то, что поставлено через sys.setprofile(). Сохраняйте старое значение перед своей установкой и возвращайте его в finally, иначе выключите чужой профилировщик.

Примеры

import sys
def prof(frame, event, arg):
    pass
old = sys.getprofile()
print(old)  # → None
sys.setprofile(prof)
try:
    print(sys.getprofile() is prof)  # → True
finally:
    sys.setprofile(old)
print(sys.getprofile())  # → None

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности