Python 3.7+pstatsпонятие
pstats.SortKey
отчёт профиля
Перечисление ключей сортировки для Stats.sort_stats(): CALLS, CUMULATIVE, TIME, NAME и другие.
Синтаксис
stats.sort_stats(SortKey.CUMULATIVE, SortKey.NAME)
Опечатка в строке ('cumtme') всплывает только при вызове — KeyError, а SortKey.CUMTIME — AttributeError сразу и с подсказкой редактора. Строки принимают и однозначные сокращения ('cumu', 'tot'), но не 'cum': оно подходит и к cumulative, и к cumtime. TIME — это tottime, время в самой функции без вложенных вызовов, а CUMULATIVE — вместе с ними. Члены — подкласс str и равны своим строкам.
Примеры
from pstats import SortKey
print(SortKey.CUMULATIVE == 'cumulative') # → True
print(SortKey.TIME.value) # → time
import cProfile, pstats, io
with cProfile.Profile() as pr:
sorted(range(100))
st = pstats.Stats(pr, stream=io.StringIO())
try:
st.sort_stats('cumtme')
except KeyError as e:
print(e) # → 'cumtme'
См. также
Частые ошибки
Открыть в полном глоссарииdocs.python.orgСообщить о неточности