关于Python中的向量相加和numpy中的向量相加效率对比


Posted in Python onAugust 26, 2019

直接使用Python来实现向量的相加

# -*-coding:utf-8-*-
#向量相加
def pythonsum(n):
 a = range(n)
 b = range(n)
 c = []
 for i in range(len(a)):
  a[i] = i**2
  b[i] = i**3
  c.append(a[i]+b[i])
 return a,b,c

print pythonsum(4),type(pythonsum(4))
for arg in pythonsum(4):
 print arg

从这里这个输出结果可以看得出来,return多个值时,是以列表的形式返回的

([0, 1, 4, 9], [0, 1, 8, 27], [0, 2, 12, 36]) <type 'tuple'>
[0, 1, 4, 9]
[0, 1, 8, 27]
[0, 2, 12, 36]

使用numpy包实现两个向量的相加

def numpysum(n):
 a = np.arange(n) ** 2
 b = np.arange(n) ** 3
 c = a + b
 return a,b,c
(array([0, 1, 4, 9]), array([ 0, 1, 8, 27]), array([ 0, 2, 12, 36])) <type 'function'>
[0 1 4 9]
[ 0 1 8 27]
[ 0 2 12 36]

比较用Python实现两个向量相加和用numpy实现两个向量相加的情况

size = 1000
start = datetime.now()
c = pythonsum(size)
delta = datetime.now() - start
# print 'The last 2 elements of the sum',c[-2:]
print 'pythonSum elapsed time in microseconds',delta.microseconds

size = 1000
start1 = datetime.now()
c1 = numpysum(size)
delta1 = datetime.now() - start1
# print 'The last 2 elements of the sum',c1[-2:]
print 'numpySum elapsed time in microseconds',delta1.microseconds

从下面程序运行结果我们可以看到在处理向量是numpy要比Python计算高出不知道多少倍

pythonSum elapsed time in microseconds 1000
numpySum elapsed time in microseconds 0

以上这篇关于Python中的向量相加和numpy中的向量相加效率对比就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python 文件操作实现代码
Oct 07 Python
用Python编写一个国际象棋AI程序
Nov 28 Python
python实现字符串和日期相互转换的方法
May 13 Python
pandas将numpy数组写入到csv的实例
Jul 04 Python
Python PyAutoGUI模块控制鼠标和键盘实现自动化任务详解
Sep 04 Python
在python中实现强制关闭线程的示例
Jan 22 Python
详解python中的线程与线程池
May 10 Python
3行Python代码实现图像照片抠图和换底色的方法
Oct 10 Python
python 求定积分和不定积分示例
Nov 20 Python
python 和c++实现旋转矩阵到欧拉角的变换方式
Dec 04 Python
适合Python初学者的一些编程技巧
Feb 12 Python
Python实现爬取网页中动态加载的数据
Aug 17 Python
python中sort和sorted排序的实例方法
Aug 26 #Python
对Python 中矩阵或者数组相减的法则详解
Aug 26 #Python
Numpy 中的矩阵求逆实例
Aug 26 #Python
利用python-docx模块写批量生日邀请函
Aug 26 #Python
在python Numpy中求向量和矩阵的范数实例
Aug 26 #Python
Python 如何提高元组的可读性
Aug 26 #Python
Python使用python-docx读写word文档
Aug 26 #Python
You might like
Swoole4.4协程抢占式调度器详解
2019/05/23 PHP
ASP中进行HTML数据及JS数据编码函数
2009/11/11 Javascript
基于SVG的web页面图形绘制API介绍及编程演示
2013/06/28 Javascript
JS图片根据鼠标滚动延时加载的实例代码
2013/07/13 Javascript
javascript与有限状态机详解
2014/05/08 Javascript
javascript使用smipleChart实现简单图表
2015/01/02 Javascript
jquery实现翻动fadeIn显示的方法
2015/03/05 Javascript
详解JavaScript中void语句的使用
2015/06/04 Javascript
JavaScript 性能优化小结
2015/10/12 Javascript
javascript图片切换综合实例(循环切换、顺序切换)
2016/01/13 Javascript
js中的eval()函数把含有转义字符的字符串转换成Object对象的方法
2016/12/02 Javascript
无阻塞加载js,防止因js加载不了影响页面显示的问题
2016/12/18 Javascript
jQuery实现的简单悬浮层功能完整实例
2017/01/23 Javascript
JS全角与半角转化实例(分享)
2017/07/04 Javascript
微信小程序 跳转传递数据的实例
2017/07/06 Javascript
jQuery选择器特殊字符与属性空格问题
2017/08/14 jQuery
javascript深拷贝、浅拷贝和循环引用深入理解
2018/05/27 Javascript
详解基于node.js的脚手架工具开发经历
2019/01/28 Javascript
VUE安装使用教程详解
2019/06/03 Javascript
vue选项卡切换登录方式小案例
2019/09/27 Javascript
Vue项目中数据的深度监听或对象属性的监听实例
2020/07/17 Javascript
python实现美团订单推送到测试环境,提供便利操作示例
2019/08/09 Python
window7下的python2.7版本和python3.5版本的opencv-python安装过程
2019/10/24 Python
django中间键重定向实例方法
2019/11/10 Python
详解Python在使用JSON时需要注意的编码问题
2019/12/06 Python
解决paramiko执行命令超时的问题
2020/04/16 Python
python如何查看安装了的模块
2020/06/23 Python
python实现图像高斯金字塔的示例代码
2020/12/11 Python
如何使用canvas绘制可移动网格的示例代码
2020/12/14 HTML / CSS
英国家庭珠宝商:T. H. Baker
2018/02/08 全球购物
小学生美德少年事迹
2014/02/02 职场文书
励志演讲稿500字
2014/08/21 职场文书
活动经费申请报告
2015/05/15 职场文书
商务宴会祝酒词
2015/08/11 职场文书
关于Vue中的options选项
2022/03/22 Vue.js
让JavaScript代码更加精简的方法技巧
2022/06/01 Javascript