关于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 相关文章推荐
linux系统使用python监测系统负载脚本分享
Jan 15 Python
浅析python递归函数和河内塔问题
Apr 18 Python
Python之Scrapy爬虫框架安装及简单使用详解
Dec 22 Python
利用Python代码实现数据可视化的5种方法详解
Mar 25 Python
使用pandas对两个dataframe进行join的实例
Jun 08 Python
利用python实现在微信群刷屏的方法
Feb 21 Python
Python 实现数据结构-堆栈和队列的操作方法
Jul 17 Python
python 图片二值化处理(处理后为纯黑白的图片)
Nov 01 Python
python内打印变量之%和f的实例
Feb 19 Python
详解Python中的编码问题(encoding与decode、str与bytes)
Sep 30 Python
pycharm 实现复制一行的快捷键
Jan 15 Python
Python 批量下载阴阳师网站壁纸
May 19 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 dirname(__FILE__) 获取当前文件的绝对路径
2011/06/28 PHP
探讨PHP调用时间格式的参数详解
2013/06/06 PHP
ThinkPHP模板Volist标签嵌套循环输出多维数组的方法
2016/03/23 PHP
javascript DOM编程实例(智播客学习)
2009/11/23 Javascript
js克隆对象、数组的常用方法介绍
2013/09/26 Javascript
jquery插件splitScren实现页面分屏切换模板特效
2015/06/16 Javascript
JS日期加减,日期运算代码
2015/11/05 Javascript
js获取鼠标位置实例详解
2015/12/09 Javascript
如何利用JS通过身份证号获取当事人的生日、年龄、性别
2016/01/22 Javascript
JavaScript记录光标在编辑器中位置的实现方法
2016/04/22 Javascript
浅析jQuery中使用$所引发的问题
2016/05/29 Javascript
如何解决手机浏览器页面点击不跳转浏览器双击放大网页
2016/07/01 Javascript
js注入 黑客之路必备!
2016/09/14 Javascript
Javascript 正则表达式校验数字的简单实例
2016/11/02 Javascript
基于vue配置axios的方法步骤
2017/11/09 Javascript
JavaScript常见JSON操作实例分析
2018/08/08 Javascript
Bootstrap模态对话框中显示动态内容的方法
2018/08/10 Javascript
解决vue单页路由跳转后scrollTop的问题
2018/09/03 Javascript
小程序云开发实战小结
2018/10/25 Javascript
微信小程序自定义导航栏实例代码
2019/04/05 Javascript
Vue.js自定义指令学习使用详解
2019/10/19 Javascript
vue3.0封装轮播图组件的步骤
2021/03/04 Vue.js
一键搞定python连接mysql驱动有关问题(windows版本)
2016/04/23 Python
基于python框架Scrapy爬取自己的博客内容过程详解
2019/08/05 Python
python3.7将代码打包成exe程序并添加图标的方法
2019/10/11 Python
Python利用Scrapy框架爬取豆瓣电影示例
2020/01/17 Python
如何在 Django 模板中输出 &quot;{{&quot;
2020/01/24 Python
如何基于python对接钉钉并获取access_token
2020/04/21 Python
Python3自定义http/https请求拦截mitmproxy脚本实例
2020/05/11 Python
使用useBean标志初始化BEAN时如何接受初始化参数
2012/02/11 面试题
室内设计自我鉴定
2013/10/15 职场文书
函授教育个人学习的自我评价
2013/12/31 职场文书
竞选班干部演讲稿100字
2014/08/20 职场文书
队名及霸气口号大全
2015/12/25 职场文书
如何理解PHP核心特性命名空间
2021/05/28 PHP
Navicat Premium自定义 sql 标签的创建方式
2022/09/23 数据库