|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 majian890324 于 2020-6-29 16:12 编辑
https://fishc.com.cn/thread-55756-1-1.html 自己制作一个计时器工具
课后作业是上面的页面,因为代码太多我就不贴上来了,因为绝大部分的代码我都写出来了,其中的问题部分我用其他的方法曲线救国了一下,所以突然有个问题就是:
self.default_timer = t.process_time # 把 time 模块 里的这个函数赋值给一个变量
self.begin = self.default_timer() ---------------# 在把这个变量赋值给另一个变量
还有一个是调用外部函数:
self.func = func ----------------- # func 是一个外部函数
for i in range(self.number): --------------- #循环计算调用这个函数所用的时间
self.func()
问题:这里边主要是不明白 “()” 括号的意义,因为我刚开始想到的方法和参考答案是一样的,但是 self.default_timer = t.process_time 这里我写成:self.default_timer = t.process_time()。
结果不加括号,在后面:self.begin = self.default_timer() 这里在加括号就可以正常计时,但是我先加括号永远显示的秒数就是一个数不变,
还有就是这个计时器:在计算外部函数运行时间的时候,把外部函数当做一个变量传入到一个方法里进行计算,为什么fun要加()呢?
这个()是什么意思呢?
我感觉我说的有点不清楚哈,主要就是这个()到底是什么意思?
本帖最后由 Twilight6 于 2020-6-29 16:32 编辑
结果不加括号,在后面:self.begin = self.default_timer() 这里在加括号就可以正常计时,但是我先加括号永远显示的秒数就是一个数不变,
不加括号是返回一个函数给 变量 而你加了参数那么就是返回函数运行的结果返回给变量 肯定会固定了时间了~~
加括号是调用函数,返回的是一个函数的运行结果,不加括号只是单纯的是个函数体
这个函数体被赋值到其他变量上去,当你想调用这个变量时候就只需要加上括号就行
|
|