鱼C论坛

 找回密码
 立即注册
查看: 637|回复: 8

有关python计时器的问题

[复制链接]
回帖奖励 1 鱼币 回复本帖可获得 1 鱼币奖励! 每人限 1 次(中奖概率 20%)
发表于 2018-7-30 21:35:39 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
小甲鱼的计时器:

这是小甲鱼的计时器

这是小甲鱼的计时器

我的计时器:
import time as t

class Mytimer():
    #定义普通方法:开始计时

    def start(self):
        self.start=t.localtime()
        print('开始计时')

    #定义普通方法:停止计时 并在结束的时候就得到过了多少时间
    def stop(self):
        self.stop=t.localtime()
        self._calu()
        print('停止计时')


    #定义内部方法(__):计算时间差:时间的年月日时分秒都是相互独立的
                                    #用序列来存储,用迭代来得到并计算
    def _calu(self):
        self.suboftime=[]#创建列表//得到的是 相差的年月日
        self.prompt='总共运行了'
        for index in range(6):#迭代计算得到年月日时分秒的差值 并用序列的方法append保存进序列
            self.suboftime.append(self.stop[index]-self.start[index]) #star.stop[index] 指的就是stop方法得到的时间的年/月/日/。。。
            self.prompt += str(self.suboftime[index])


        print(self.prompt)

A=Mytimer()
A.start()

A.stop()
结果:

这是我的计时器结果 无论怎么调用都是00000

这是我的计时器结果 无论怎么调用都是00000
怎么都还是0000

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2018-7-30 21:36:33 | 显示全部楼层
有谁可以帮帮忙
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-7-30 21:54:02 | 显示全部楼层
本帖最后由 小思喵 于 2018-7-30 21:55 编辑

微信图片_20180730215049.png 这是小甲鱼的 小甲鱼的代码是有时间差的 而我的却没有
import time as t

class Mytimer():

     #打印结果 :魔法方法 __str__和__repr__
    def __str__(self):
         return self.prompt

    __repr__ = __str__


    #定义普通方法:开始计时
    def start(self):
        self.start=t.localtime()
        print('开始计时')

    #定义普通方法:停止计时 并在结束的时候就得到过了多少时间
    def stop(self):
        self.stop=t.localtime()
        self._calu()
        print('停止计时')


    #定义内部方法(__):计算时间差:时间的年月日时分秒都是相互独立的
                                    #用序列来存储,用迭代来得到并计算
    def _calu(self):
        self.suboftime=[]#创建列表//得到的是 相差的年月日
        self.prompt='总共运行了'
        for index in range(6):#迭代计算得到年月日时分秒的差值 并用序列的方法append保存进序列
            self.suboftime.append(self.stop[index]-self.start[index]) #star.stop[index] 指的就是stop方法得到的时间的年/月/日/。。。
            self.prompt += str(self.suboftime[index])




A=Mytimer()
A.start()

A.stop()
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-7-30 22:11:18 | 显示全部楼层
你的start完了就stop了。程序运行很快的。你加上t.sleep(2)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-7-30 22:12:16 | 显示全部楼层
甲鱼老师是实例运行后手敲的,有时间间隔
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-7-30 23:11:32 | 显示全部楼层
塔利班 发表于 2018-7-30 22:12
甲鱼老师是实例运行后手敲的,有时间间隔

我用你的方法改进了的确有效
不过我按照3楼甲鱼的代码巧
并没有 显示prompt的内容 这是为什么呢
而且我不明白   __repr__ = __str__  有什么作用
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-7-30 23:39:12 | 显示全部楼层
__str__变成字符串用于打印
__repr__用于你直接敲实例名称做字符串显示
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-7-30 23:46:38 | 显示全部楼层
塔利班 发表于 2018-7-30 23:39
__str__变成字符串用于打印
__repr__用于你直接敲实例名称做字符串显示

那为什么我还是无法显示prompt的内容
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-7-31 07:19:06 | 显示全部楼层
小思喵 发表于 2018-7-30 23:46
那为什么我还是无法显示prompt的内容

你把小甲鱼代码打出来吧,一个图片我看着实在累
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-10-5 23:29

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表