如何找出每行python代码的执行时间.

line_profiler适用于ipython,但不适用于jupyter笔记本电脑.我try 将@profile添加到我的函数中,它给出了一个错误,即没有定义名称"profile".

def prof_function():
    x=10*20
    y=10+x
    return (y)

推荐答案

你可以在jupyter笔记本中使用line_profiler.

  1. 安装:pip install line_profiler
  2. 在你的jupyter笔记本中,拨打:%load_ext line_profiler
  3. 如示例所示定义函数prof_function.
  4. 最后,简介如下:%lprun -f prof_function prof_function()

将提供以下输出:

Timer unit: 1e-06 s

Total time: 3e-06 s
File: <ipython-input-22-41854af628da>
Function: prof_function at line 1

Line #      Hits         Time  Per Hit   % Time  Line Contents
==============================================================
     1                                           def prof_function():
     2         1          1.0      1.0     33.3      x=10*20
     3         1          1.0      1.0     33.3      y=10+x
     4         1          1.0      1.0     33.3      return (y)

Python-3.x相关问答推荐

我有个问题继承遗产合伙人

使用Python请求从特定URL下载图像时出错

Pandas :从元组字典创建数据帧

如何使用PySide6创建切换框架?

如何定义既允许固定单词又允许模式的pydanti.BaseModel?

将数据帧扩展为矩阵索引

当条件第一次出现时将行标记为True,如果按顺序重复则标记为False

删除浮点型数据集中每列重复值比例超过一定阈值的列

匹配语句NaN

如何转置和 Pandas DataFrame 并命名新列?

转换Pandas 数据框 - 添加行

使用 python 查找标记的元素

如何在 Telethon 中向机器人发送发送表情符号

具有 2 个输入的 python 3 map/lambda 方法

Django 2 个字段之一不能为空

if 语句中冒号的语法错误

发送Electron邮件时的 MIMEText UTF-8 编码问题

使用 Sublime Text 3 在 Python 3 中打印 UTF-8

0 是 0 == 0(#evaluates 为真?)

TypeError:只有整数标量数组可以转换为标量索引