NumPy 上手一个例子 vectorsum.py

  NumPy系统是Python的一种开源的数值计算扩展。这种工具可用来存储和处理大型矩阵,比Python自身的嵌套列表(nested list structure)结构要高效的多(该结构也可以用来表示矩阵(matrix))。据说NumPy将Python相当于变成一种免费的更强大的MatLab系统。NumPy本身用C实现。

 

  翻了一下PACKT出版社的学习指南,第一章有一个对比计算效率的例子拿来作为上手。

  结果是,在本机32bit的python上跑出来的效果跟书上相差很多,首先是32bit的python整形上限跟64bit相差很多:

>>> sys.maxsize
2147483647

另外还有就是datetime计时精读存在问题。

不管怎样,就当是尝试一把吧,

代码在下面,问题解决  stackoverflow

#-*- coding:utf-8 -*-
import sys
from datetime import datetime
import numpy as np
"""
 Input format:  python vectorsum.py n
 n: the excepted size for the vector
"""

def numpsysum(n):
    a = np.arange(n) ** 2
    b = np.arange(n) ** 3
    c = a + b
    return c
    
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 c
        
size = int(sys.argv[1])
start = datetime.now()
c = pythonsum(size)
delta = datetime.now() - start
print "The last 2 elements of the pythonsum is:",c[-2:]
print "Python method cost time : ",delta.microseconds
start = datetime.now()
c = numpsysum(size)
delta = datetime.now() - start
print "The last 2 elements of the numpysum is:",c[-2:]
print "NumPy method cost time : ",delta.microseconds

 

暂时没有大规模处理的需求。留念~

注:Linux上自带的python maxsize是 9223372036854775807

 

转载于:https://www.cnblogs.com/learn-to-rock/p/5444810.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值