#!/usr/bin/env python
# -*- coding:utf-8 -*-
import time as t class MyTimer:
def __init__(self):#重写初始化函数
self.units=["年","月","天","小时","分钟","秒"]
self.lasted=[]#保存 计数开始时间和结束时间之间的时间差 年月日时分秒 对位相减
self.message="未开始计时!"
def __str__(self):#重新类的__str__函数 输出字符串
return self.message def __add__(self, other):#重写类的__add__函数 当对象调用+号时候调用
self.message ="总共运行了"
result=[]
for item in range(6):#用循环 在时间位置对应相加
total= self.lasted[item]+other.lasted[item]
if total :
ts=str(total)+self.units[item]
result.append(ts)
self.message+=ts
return self.message def __sub__(self, other):
self.message="两个对象时间差:"
result=[]
for index in range(6):
lfs=self.lasted[index] -other.lasted[index]
if lfs:
result.append(str(lfs)+self.units[index])
self.message+=str(lfs)+self.units[index]
return self.message def Start(self):
self.message="计数器已经运行了:"
self.begintime = t.localtime()#取当前本地时间 def Stop(self):
self.endtime=t.localtime()#取当前结束时间
self.__SumTime()#开始计算时间差 def __SumTime(self):#计算 开始时间和结束时间的差
for item in range(6):
rs=self.endtime[item]-self.begintime[item]
self.lasted.append(rs)
if(rs):
self.message+=str(rs)+self.units[item] t1=MyTimer#创建计数器对象1
t1.Start()
t.sleep(7)
t1.Stop()
print("对象t1:"+str(t1)) t2=MyTimer()#c创建计时器对象2
t2.Start()
t.sleep(1)
t2.Stop()
print("对象t2:"+str(t2)) print(t1+t2)
print(t1-t2)

python基础学习1-计数器实例的更多相关文章

  1. Python 基础学习 总结篇

    Python 基础学习总结 先附上所有的章节: Python学习(一)安装.环境配置及IDE推荐 Python学习(二)Python 简介 Python学习(三)流程控制 Python学习(四)数据结 ...

  2. Day1 Python基础学习

    一.编程语言分类 1.简介 机器语言:站在计算机的角度,说计算机能听懂的语言,那就是直接用二进制编程,直接操作硬件 汇编语言:站在计算机的角度,简写的英文标识符取代二进制去编写程序,本质仍然是直接操作 ...

  3. 0003.5-20180422-自动化第四章-python基础学习笔记--脚本

    0003.5-20180422-自动化第四章-python基础学习笔记--脚本 1-shopping """ v = [ {"name": " ...

  4. Day1 Python基础学习——概述、基本数据类型、流程控制

    一.Python基础学习 一.编程语言分类 1.简介 机器语言:站在计算机的角度,说计算机能听懂的语言,那就是直接用二进制编程,直接操作硬件 汇编语言:站在计算机的角度,简写的英文标识符取代二进制去编 ...

  5. (一)python基础学习

    根据廖雪峰老师的python教程写一些学习总结! Python基础学习 1.使用list和tuple (1)list Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时 ...

  6. python基础学习(起步)

    目录 python基础学习(起步) 变量 常量 变量的内存管理 python垃圾回收机制 变量的其他赋值方式 今日编程小题 本人能力有限,若有偏颇之处请读者大大不吝赐教! 祝大家每天都在成长! pyt ...

  7. Python基础学习二

    Python基础学习二 1.编码 utf-8编码:自动将英文保存为1个字符,中文3个字符.ASCll编码被囊括在内. unicode:将所有字符保存为2给字符,容纳了世界上所有的编码. 2.字符串内置 ...

  8. Python基础学习一

    Python基础学习一 1.变量与常量 变量名:大小写英文.数字.下划线的组合,数字不能开头 常量名:习惯上常量用大写字母命名,例如"PI" 2.多行输出 转义符:反斜杠(),如果 ...

  9. Python基础学习五

    Python基础学习五 迭代 for x in 变量: 其中变量可以是字符串.列表.字典.集合. 当迭代字典时,通过字典的内置函数value()可以迭代出值:通过字典的内置函数items()可以迭代出 ...

  10. Python基础学习四

    Python基础学习四 1.内置函数 help()函数:用于查看内置函数的用途. help(abs) isinstance()函数:用于判断变量类型. isinstance(x,(int,float) ...

随机推荐

  1. 转:MVC框架

    MVC框架是什么 MVC (Modal View Controler)本来是存在于Desktop程序中的,M是指数据模型,V是指用户界面,C则是控制器.使用MVC的目的是将M和V的实现代码分离,从而使 ...

  2. 简易使用UILabel的富文本

    简易使用UILabel的富文本 使用效果: 源码: NSString+YX.h    NSString+YX.m // // NSString+YX.h // YXKit // // Copyrigh ...

  3. 【C语言】 任意十进制数字转十六进制

    大概思路:输入任意十进制数字 首先确定位数: 使用整形数组来存储十六进制数: a[0] 表示十六进制数字的位数: #include <stdio.h> #include <stdli ...

  4. c++课程学习(未完待续)

    关于c++课程学习 按照计划,我首先阅读谭浩强c++程序设计一书的ppt,发现第一章基本上都是很基础的东西. 同时,书中与班导师一样,推荐了使用visual c++. 而师爷的教程里面推荐使用的是ec ...

  5. 初识android界面布局

    1.活动 活动是android开发中最基本的概念,也是最容易吸引用户的地方,是一种可以包含用户界面的组件. Activity类中定义了7个回调方法,覆盖了活动生命周期的每一个环节.具体如下: (1)o ...

  6. 026.3 网络编程 TCP聊天

    分为客户端和服务端,分别进行收发操作##########################################################################客户端:###思 ...

  7. 归并排序(php实现)

    <?php function mergeSort(&$arr){ $len = count($arr); msort($arr,0,$len-1); } function msort(& ...

  8. SQLServer创建链接服务器

    --SQLServer创建链接服务器----1.访问接口中Oracle接口 属性 选择 允许进程内-- --删除链接服务器EXEC master.dbo.sp_dropserver @server=N ...

  9. 【http学习杂记】2017年7月14日

    1. 连接超时 连接超时是tcp协议层次, 此时服务器还没有处理请求数据,也就是说服务器的逻辑开没有执行 2. 请求超时 请求超时属于服务器已经连接成功并开始处理,但是时间比较长,大于你设置的请求超时 ...

  10. 基于easyui开发Web版Activiti流程定制器详解(六)——Draw2d的扩展(三)

    题外话: 最近在忙公司的云项目空闲时间不是很多,所以很久没来更新,今天补上一篇! 回顾: 前几篇介绍了一下设计器的界面和Draw2d基础知识,这篇讲解一下本设计器如何扩展Draw2d. 进入主题: 先 ...