line_profiler и kernprof не работают, установлены из pip и repro
Я попробовал то, что было предложено. На простейшем коде я получаю знакомую ошибку, о которой упоминали другие. Ошибка:
@profile
NameError: name 'profile' is not defined
по минимальному коду:
@profile
def hello():
print('Testing')
hello()
из командной строки:
kernprof -l hello.py
Я импортировал future
и я даже установил с дистрибутива за пределами моего virtualenv. Это было предыдущее предложение, так как импортировал будущий модуль.
Так
import future
import cProfile
@profile
def hello():
print('Testing')
hello()
также выдает ту же ошибку. Я не могу заставить этот профилировщик строки работать с pip или даже из необработанного хранилища. Мои версии:
pip 8.1.2
python 2.7
1 ответ
Решение
Я исправил это мое клонирование кода с https://github.com/rkern/line_profiler и перестроил, а затем вызвал kernprof из места установки двоичного файла.
Вы можете добавить следующий фрагмент в начале вашего файла Python:
import line_profiler
profile = line_profiler.LineProfiler()