python怎么提高计算速度

作者:yang 时间:2021-06-09 17:04:42 

下面是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

标签:python,计算速度
0
投稿

猜你喜欢

  • 说说CSS Hack 和向后兼容

    2010-05-17 13:11:00
  • 最新LOGO设计流行趋势——叶子

    2007-10-02 18:26:00
  • 使用Python编写Linux系统守护进程实例

    2022-06-09 16:50:52
  • Python内建类型list源码学习

    2023-03-21 09:41:24
  • Python全栈之学习JS(1)

    2021-09-30 03:43:23
  • python中内置函数ord()返回字符串的ASCII数值实例详解

    2023-09-05 07:07:26
  • Python实现的服务器示例小结【单进程、多进程、多线程、非阻塞式】

    2023-02-24 00:19:25
  • 了解WEB页面工具语言XML(一)产生背景

    2008-09-05 17:18:00
  • 跟老齐学Python之有容乃大的list(1)

    2021-08-17 00:27:09
  • matplotlib绘制鼠标的十字光标的实现(自定义方式,官方实例)

    2021-06-09 02:33:06
  • 节日快乐! Python画一棵圣诞树送给你

    2022-06-11 07:53:09
  • Python数据分析matplotlib设置多个子图的间距方法

    2021-03-16 01:08:29
  • python实现Scrapy爬取网易新闻

    2021-11-23 17:02:11
  • 整理Python最基本的操作字典的方法

    2022-03-01 07:04:38
  • 不同浏览器的兼容一些写法

    2009-03-26 12:58:00
  • python基础教程之udp端口扫描

    2022-01-10 01:03:22
  • keras.layers.Conv2D()函数参数用法及说明

    2022-02-25 01:15:05
  • 利用Python实现自动扫雷小脚本

    2023-05-10 01:45:27
  • 置信椭圆原理以及椭圆图形绘制方式

    2021-04-24 04:25:04
  • 深入学习python的yield和generator

    2022-01-15 05:00:28
  • asp之家 网络编程 m.aspxhome.com