Jupyter Notebook中%time和%timeit的使用详解

讲解“Jupyter Notebook中%time和%timeit的使用详解”的完整攻略:

概述

在Jupyter Notebook中,%time%timeit是两个十分有用的命令,它们可以用来测试代码的执行时间,其中:

  • %time用于测试单次代码块的执行时间;
  • %timeit用于重复测试代码块的执行时间,以此来计算平均每个操作所需的时间。

本文将详细讲解%time%timeit的使用方法。

%time

基本使用

%time命令后面跟随的一般是一条Python语句,它会返回这条语句执行的时间。

示例代码:

%time list(range(1000000))

示例输出:

CPU times: user 13.5 ms, sys: 3.68 ms, total: 17.2 ms
Wall time: 16.7 ms

其中,输出值CPU timesusersystotal表示程序在CPU上执行的时间,即程序运行时间,而Wall time则是程序在墙上时钟上运行的实际时间。

多语句计时

在计时时,你可以使用花括号将多条语句组成一组。

示例代码:

%%time
x = 2
y = x * 2

示例输出:

CPU times: user 5 µs, sys: 2 µs, total: 7 µs
Wall time: 10 µs

输出时间到变量中

你可以将"%time"命令的输出值赋值给一个变量,以便稍后引用。

示例代码:

t = %timeit -o list(range(1000000))
print(t)

%timeit

%timeit命令用于测试Python语句的执行时间,并可以多次调用语句以得到更加准确的平均时间。默认情况下,%timeit命令将语句运行10000次。

示例代码:

%timeit list(range(1000000))

示例输出:

97.1 ms ± 3.82 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)

这个例子中,%timeit命令运行了10000次list(range(1000000)),并且它通常需要97ms左右才能运行。输出值显示了所有执行时间的平均值、标准偏差和每个循环的时间。

你可以通过-n标志指定调用语句的次数,通过-r标志指定执行循环的数量。

示例代码:

%timeit -n 5 -r 3 list(range(1000000))

示例输出:

93.7 ms ± 1.04 ms per loop (mean ± std. dev. of 3 runs, 5 loops each)

在这个例子中,%timeit命令运行了5次list(range(1000000)),每次都重复进行3次循环,总共进行了15次循环。输出值显示了平均每个循环的时间。

最后,你可以将%timeit命令输出的结果保存到一个变量中。

示例代码:

t = %timeit -o list(range(1000000))
print(t)

示例输出:

87.7 ms ± 928 µs per loop (mean ± std. dev. of 7 runs, 10 loops each)
<TimeitResult : 87.7 ms ± 928 µs per loop (mean ± std. dev. of 7 runs, 10 loops each)>

结果存储在一个TimeitResult对象中,该对象包含经过多次重复的测试的平均时间、标准偏差等信息。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Jupyter Notebook中%time和%timeit的使用详解 - Python技术站

(0)
上一篇 2023年6月3日
下一篇 2023年6月3日

相关文章

  • Python实现批量翻译的示例代码

    下面是“Python实现批量翻译的示例代码”完整攻略: 一、准备工作 1. 获取API key 在使用翻译API之前,需要先去对应的翻译服务商申请API key,以便程序能够进行调用。以百度翻译API为例,可以在百度翻译开放平台中进行申请(https://api.fanyi.baidu.com/)。申请完API key后,需要记下来,后续使用API时会用到。…

    python 2023年6月3日
    00
  • Python爬虫入门教程01之爬取豆瓣Top电影

    Python爬虫入门教程01之爬取豆瓣Top电影 本次教程将会教你如何使用Python编写一个简单的爬虫程序,用于爬取豆瓣电影Top250的数据。本教程将会覆盖以下主题: 项目简介 准备工作 利用Requests模块获取网页内容 使用BeautifulSoup解析网页 代码实现 结束语 1. 项目简介 这个项目旨在教你如何使用Python编写一个简单的爬虫程…

    python 2023年5月14日
    00
  • python 获取字典键值对的实现

    获取字典键值对,在Python中是一项常见的操作。以下是这个问题的解决方案: 一、使用items()方法 Python 字典(Dictionary) items()方法以列表返回可遍历的(键, 值) 元组数组。示例代码如下所示: # 创建字典 dict1 = {‘name’: ‘Tom’, ‘Age’: 15, ‘country’: ‘China’} # 获…

    python 2023年5月13日
    00
  • Pycharm安装第三方库时Non-zero exit code错误解决办法

    以下是关于“Pycharm安装第三方库时Non-zero exit code错误解决办法”的完整攻略: 问题描述 在使用 Pycharm 安装第三方库时,有时会出现 Non-zero exit code 错误,这个错误通是由于安装过程中出现了错误导致的。下面是一个例: pip install numpy 在上述代码中,尝试使用 pip 安装 numpy 库,…

    python 2023年5月13日
    00
  • Matplotlib控制坐标轴刻度间距与标签实例代码

    下面我会详细讲解一下Matplotlib控制坐标轴刻度间距与标签实例代码的完整攻略。 1. Matplotlib控制坐标轴刻度间距与标签的方法简介 在Matplotlib中,我们可以使用xticks和yticks方法来控制坐标轴的刻度间距和标签。xticks方法用于设置X轴刻度,而yticks方法用于设置Y轴刻度。 这两个方法的常用参数有: ticks:刻度…

    python 2023年6月6日
    00
  • 如何使用Python在MySQL中使用唯一键?

    在MySQL中,唯一键是一种用于确保表中每一行的唯一性的特殊列。在Python中,可以使用MySQL连接来执行唯一键查询。以下是在Python中唯一键的完整攻略,包唯一键基本语法、使用唯一键的示例及如何在Python中使用唯一键。 唯一键的基本语法 在MySQL中可以使用UNIQUE关键字来指定唯一键列。以下是创建唯一键列的本语法: CREATE TABLE…

    python 2023年5月12日
    00
  • 如何使用Python从数据库中读取数据?

    当需要从数据库中读取数据时,可以使用Python连接到数据库并执行SQL查询。以下是使用Python从数据库中读取数据的完整攻略: 连接数据库 要连接到数据库,需要提供数据库的主机名、用户名、密码和数据库名称。可以使用以下代码连接MySQL: import mysql.connector mydb = mysql.connector.connect( hos…

    python 2023年5月12日
    00
  • Python 进程之间共享数据(全局变量)的方法

    实现多进程之间的数据共享,可以通过使用共享内存的方式,或者使用第三方库multiprocessing中提供的Manager类型,下面分别进行详细的介绍。 使用共享内存 使用共享内存的方式,需要使用multiprocessing中提供的Value、Array对象。Value用于基本类型的共享内存,而Array用于数组的共享内存。 Value Value用于创建…

    python 2023年5月19日
    00
合作推广
合作推广
分享本页
返回顶部