python怎么提高计算速度
作者:yang 发布时间:2021-06-09 17:04:42
标签:python,计算速度
下面是python中的一个函数计算代码:
loops=25000000
from math import*
a=range(1,loops)
def f(x):
return 3*cos(x)+4*sin(x)**2
%timeit r=(f(x) for x in a)
效率:
1000000 loops, best of 3: 552 ns per loop
下面我们就来看一下提高计算速度的方法:
1、使用数组
import numpy as np
a = np.arange(1, loops)
%timeit r = 3 * np.cos(a) + np.sin(a)** 2
效率:
1 loop, best of 3: 3.87 s per loop
2、使用数字表达专用库numexpr
import numexpr as ne
ne.set_num_threads(1)
f = '3 * log(a) + cos(a) **2'
%timeit r = ne.evaluate(f)
效率:
1 loop, best of 3: 2.15 s per loop
3、使用多线程
ne.set_num_threads(4)
%timeit r = ne.evaluate(f)
效率:
1 loop, best of 3: 1.14 s per loop
来源:https://www.py.cn/faq/python/18654.html
0
投稿
猜你喜欢
- 你是怎么把密码储存到数据库里?是以纯文字的方式?你可知道这对安全的危险性?当攻击你网站的人能开启数据库浏览,以纯文字方式存在数据库里的密码一
- 实例如下所示:#########start 获取文件路径、文件名、后缀名############def jwkj_get_filePath_
- 前言上一次简单了解了协程的工作原理 前文链接最后提到了几个使用协程时会遇到的问题,其中一个就是主线程不会等待子线程结束,在这里记录两种比较简
- 1 前言前面文章Python爬虫获取基金列表、Python爬虫获取基金基本信息我们已经介绍了怎么获取基金列表以及怎么获取基金基本信息,本文我
- 以前经常吃公司旁边的食堂,人多,排队。夏天的时候,我们总要找一个靠窗口通风好的地方坐,没有空调只有风扇,风扇很多,开关都集中在一个地方,应该
- Jupyter Notebook 的快捷键使用前需要进行安装:pip install jupyter (前提是你已经安装好Python,并将
- 你是否曾经想在数据库中存储一个日期而没有时间部分,或者想存储一个时间值希望有更高的精度?在SQL Server 2008的介绍中,微软介绍了
- 设计思路本文整理归纳以往的工作中用到的东西,现汇总成基础测试框架提供分享。框架采用python3 + selenium3 + PO + ya
- A.动态页面第一步:创建转向控制页面,创建网站默认的首页文件(通常为"index.asp"或"default.
- Macromedia官方将在其他软件中内建Fireworks技术称为Fireworks技术,网上也称之为内建图片编辑器。Dreamweave
- 模块是用类编写的,只有一个StringIO类,所以它的可用方法都在类中。此类中的大部分函数都与对文件的操作方法类似。例:#coding=gb
- 本文以实例详解了python的迭代器与生成器,具体如下所示:1. 迭代器概述: 迭代器是访问集合元素的一种方式。迭代器对象从集合的
- 一、检测它是不是整数function Is_Int(a_str) if&
- 本文实例讲述了Python3实现的反转单链表算法。分享给大家供大家参考,具体如下:反转一个单链表。方案一:迭代# Definition fo
- 首先说一下 ,我是用的anaconda3装的pytorch为了方便建议你也安装一个。其实这个挺简单的,你找找“c:/user/你的用户名/”
- 目录:分析和设计组件编码实现和算法用 Ant 构建组件测试 JavaScript 组件话说上期我们讨论了队列管理组件的设计,并且给它取了个响
- 本XML系列教程将分三部分发布,到最后一期我们将拥有一个功能全面,更加友好的XML菜单。本教程这个第一期涉及到了一些XML的基础知识。大家都
- 本文实例讲述了Python本地与全局命名空间用法。分享给大家供大家参考。具体如下:x = 1def fun(a): b=3 &n
- 引言之前有些无聊(呆在家里实在玩的腻了),然后就去B站看了一些python爬虫视频,没有进行基础的理论学习,也就是直接开始实战,感觉跟背公式
- 无参数函数先解释一下时间戳,所谓时间戳,即自1970年1月1日00:00:00所经历的秒数,然后就可以理解下面的函数了。下面代码默认from