24小时热门版块排行榜    

查看: 364  |  回复: 2
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

锐利的碎片

木虫 (正式写手)


[交流] 【求助】帮忙看下这个python程序

# -*- coding: utf-8 -*-
import scipy.weave as weave
import numpy as np
import time

def my_sum(a):
    n=int(len(a))
    code="""
    int i;
    double counter;
    counter =0;
    for(i=0;i         counter=counter+a(i);
    }
    return_val=counter;
    """
   
    err=weave.inline(
        code,['a','n'],
        type_converters=weave.converters.blitz,
        compiler="gcc"
    )
    return err
   
a = np.arange(0, 10000000, 1.0)
my_sum(a)

start = time.clock()
for i in xrange(100):
    my_sum(a)
print "my_sum:", (time.clock() - start) / 100.0

start = time.clock()
for i in xrange(100):
    np.sum( a )
print "np.sum:", (time.clock() - start) / 100.0

start = time.clock()
print sum(a)
print "sum:", time.clock() - start

最后输出是这个:
my_sum: 0.0329930144753
np.sum: 0.029593931631
4.9999995e+13
sum: 6.02684559071

最后一步sum的时候这个4.9999995e+13是怎么多出来的?
用的是epd的python(2.6.6)
----------现在没问题了-----

[ Last edited by 锐利的碎片 on 2011-1-4 at 11:20 ]
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

» 抢金币啦!回帖就可以得到:

查看全部散金贴

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

久久_2011

新虫 (正式写手)


★ ★
余泽成(金币+2): 谢谢参与应助!欢迎常来程序语言版! 2011-02-20 15:58:18
锐利的碎片(金币+1): 2011-04-25 16:54:08
print sum(a)

本文来自: 小木虫论坛 http://muchong.com/bbs/redirect.php?fid=312&goto=lastpost#lastpost

若还有问题
应该是这行代码
3楼2011-02-02 21:59:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 3 个回答

qingzi640

木虫 (小有名气)


锐利的碎片(金币+1): 2011-04-25 19:56:07
呵呵,我正在学习中
2楼2011-02-02 10:32:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见