为了账号安全,请及时绑定邮箱和手机立即绑定

请问哪里有问题

import time


def performance(f):

    def fn(*args,**kargs):

        t1 = time.time()

        r = fn(*args,**kargs)

        t2 = time.time

        print('call %s() in %fs '%(f.__name__,(t2-t1)))

        return r

    return fn


@performance

def factorial(n):

    return reduce(lambda x,y: x*y, range(1, n+1))


print factorial(10)


正在回答

3 回答

t2=time.time()少了括号。。。

0 回复 有任何疑惑可以回复我~

from functools import reduce

0 回复 有任何疑惑可以回复我~

找到原因了  是因为我print() 使用的是python3.x的  而这里用的是print 直接加入内容

0 回复 有任何疑惑可以回复我~
#1

sun_boy

print()虽然是Python3的语法,但是Python2在Python2.6以后都是兼容这个语法的,所以print应该不是问题的关键,详见慕课网的wiki:http://www.imooc.com/wiki/detail/id/3643
2017-07-03 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
python进阶
  • 参与学习       255665    人
  • 解答问题       2949    个

学习函数式、模块和面向对象编程,掌握Python高级程序设计

进入课程

请问哪里有问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信