关于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常用web框架简单性能测试结果分享(包含django、flask、bottle、tornado)
Aug 25 Python
Python操作CouchDB数据库简单示例
Mar 10 Python
python socket多线程通讯实例分析(聊天室)
Apr 06 Python
Python匹配中文的正则表达式
May 11 Python
python sys.argv[]用法实例详解
May 25 Python
Python 移动光标位置的方法
Jan 20 Python
pyqt5 键盘监听按下enter 就登陆的实例
Jun 25 Python
python 返回一个列表中第二大的数方法
Jul 09 Python
Django模板Templates使用方法详解
Jul 19 Python
使用卷积神经网络(CNN)做人脸识别的示例代码
Mar 27 Python
python logging模块的使用
Sep 07 Python
你喜欢篮球吗?Python实现篮球游戏
Jun 11 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
PHP 遍历文件实现代码
2011/05/04 PHP
php 冒泡排序 交换排序法
2011/05/10 PHP
php 错误处理经验分享
2011/10/11 PHP
解析zend Framework如何自动加载类
2013/06/28 PHP
PHP开发中AJAX技术的简单应用
2015/12/11 PHP
php变量与数组相互转换的方法(extract与compact)
2016/12/02 PHP
对于Laravel 5.5核心架构的深入理解
2018/02/22 PHP
js移除事件 js绑定事件实例应用
2012/11/28 Javascript
Javascript Request获取请求参数如何实现
2012/11/28 Javascript
裁剪字符串trim()自定义改进版
2013/04/10 Javascript
关于jQuery object and DOM element
2013/04/15 Javascript
wangEditor编辑器失去焦点后仍然可以在原位置插入图片分析
2015/05/06 Javascript
NodeJS、NPM安装配置步骤(windows版本) 以及环境变量详解
2017/05/13 NodeJs
Jquery把获取到的input值转换成json
2017/05/15 jQuery
JS中Safari浏览器中的Date
2017/07/17 Javascript
fetch 使用及如何接收JS传值
2017/11/11 Javascript
EasyUI的DataGrid绑定Json数据源的示例代码
2017/12/16 Javascript
vue filters的使用详解
2018/06/11 Javascript
JavaScript控制浏览器全屏显示简单示例
2018/07/05 Javascript
vue 根据数组中某一项的值进行排序的方法
2018/08/30 Javascript
React Router V4使用指南(精讲)
2018/09/17 Javascript
jQuery Ajax实现Select多级关联动态绑定数据的实例代码
2018/10/26 jQuery
微信小程序实现点赞、取消点赞功能
2018/11/02 Javascript
[04:50]DOTA2亚洲邀请赛小组赛第四日 TOP10精彩集锦
2015/02/02 DOTA
Python的CGIHTTPServer交互实现详解
2018/02/08 Python
Python PyInstaller安装和使用教程详解
2020/01/08 Python
python 使用raw socket进行TCP SYN扫描实例
2020/05/05 Python
Pycharm激活方法及详细教程(详细且实用)
2020/05/12 Python
python 元组和列表的区别
2020/12/30 Python
香港永安旅游网:Wing On Travel
2017/04/10 全球购物
实体的生命周期
2013/08/31 面试题
学年自我鉴定范文
2013/10/01 职场文书
活动总结的格式
2014/05/07 职场文书
党的群众路线学习笔记
2014/11/06 职场文书
九寨沟导游词
2015/02/02 职场文书
HTML5中的DOCUMENT.VISIBILITYSTATE属性详解
2023/05/07 HTML / CSS