关于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 相关文章推荐
2款Python内存检测工具介绍和使用方法
Jun 01 Python
使用C语言扩展Python程序的简单入门指引
Apr 14 Python
selenium使用chrome浏览器测试(附chromedriver与chrome的对应关系表)
Nov 29 Python
python模块导入的细节详解
Dec 10 Python
Python异常处理知识点总结
Feb 18 Python
利用ImageAI库只需几行python代码实现目标检测
Aug 09 Python
python BlockingScheduler定时任务及其他方式的实现
Sep 19 Python
通过实例简单了解Python sys.argv[]使用方法
Aug 04 Python
python爬虫---requests库的用法详解
Sep 28 Python
新手必备Python开发环境搭建教程
May 28 Python
python中对列表的删除和添加方法详解
Feb 24 Python
python中filter,map,reduce的作用
Jun 10 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
dede全站URL静态化改造[070414更正]
2007/04/17 PHP
dedecms 批量提取第一张图片最为缩略图的代码(文章+软件)
2009/10/29 PHP
PHP中用mysqli面向对象打开连接关闭mysql数据库的方法
2016/11/05 PHP
[原创]PHP实现字节数Byte转换为KB、MB、GB、TB的方法
2017/08/31 PHP
php单元测试phpunit入门实例教程
2017/11/17 PHP
PHP设计模式(七)组合模式Composite实例详解【结构型】
2020/05/02 PHP
JSQL 基于客户端的成绩统计实现方法
2010/05/05 Javascript
轻量级 JS ToolTip提示效果
2010/07/20 Javascript
jQuery插件原来如此简单 jQuery插件的机制及实战
2012/02/07 Javascript
jquery组件使用中遇到的问题整理及解决
2014/02/21 Javascript
创建js对象和js类的方法汇总
2014/12/24 Javascript
JS实现的通用表单验证插件完整实例
2015/08/20 Javascript
JQuery标签页效果的两个实例讲解(4)
2015/09/17 Javascript
js实现旋转木马效果
2017/03/17 Javascript
详解三种方式解决vue中v-html元素中标签样式
2018/11/22 Javascript
js页面加载后执行的几种方式小结
2020/01/30 Javascript
Vue使用v-viewer实现图片预览
2020/10/21 Javascript
python进阶教程之动态类型详解
2014/08/30 Python
Python中用于返回绝对值的abs()方法
2015/05/14 Python
Python中__init__.py文件的作用详解
2016/09/18 Python
Python 字符串与二进制串的相互转换示例
2018/07/23 Python
python分批定量读取文件内容,输出到不同文件中的方法
2018/12/08 Python
python add_argument()用法解析
2020/01/29 Python
Selenium 滚动页面至元素可见的方法
2020/03/18 Python
Xadmin+rules实现多选行权限方式(级联效果)
2020/04/07 Python
解决tensorflow/keras时出现数组维度不匹配问题
2020/06/29 Python
Python Merge函数原理及用法解析
2020/09/16 Python
Python获取android设备cpu和内存占用情况
2020/11/15 Python
python基于爬虫+django,打造个性化API接口
2021/01/21 Python
HTML5+CSS3绘制锯齿状的矩形
2016/03/01 HTML / CSS
中国综合性网上购物商城:当当(网上卖书起家)
2016/11/16 全球购物
如何查看在weblogic中已经发布的EJB
2012/06/01 面试题
销售人员自我评价
2014/02/01 职场文书
小学课改工作总结
2015/08/13 职场文书
Python 机器学习工具包SKlearn的安装与使用
2021/05/14 Python
36个正则表达式(开发效率提高80%)
2021/11/17 Javascript