之前在 "for与while的洪荒之力" 中介绍到计时器,不过那样弄感觉好麻烦啊,

碰巧昨天学Java的时候,讲到求余可以用来求时间 !

for与while链接: http://www.cnblogs.com/Ruby517/p/5738344.html

所以今天我们来用一种更简单的方法求出时间: 首先,先来个简单的,看看求

余符号 "%" 究竟有什么用? 通常,一周的第0天是周日,第一天是周一 ......

 # coding: utf-8

 print u"今天是周二..."

 date = {
0: u"周日",
1: u"周一",
2: u"周二",
3: u"周三",
4: u"周四",
5: u"周五",
6: u"周六"
} goal_date = (2 + 100) % 7 if goal_date in date:
print u"一百天后是%s!!!" % (date.get(goal_date))

大家可以想想,这里要是不用字典,那得有七个if/else语句,分别用来表示周日/一/二/三/四/五/六

-----------------------------------------------------------------------------------------------------

方法1: 利用while循环和从1递增的数分别求除(得到分钟)和求余(得到秒)得到时间的计时器

 # coding: utf-8

 import os
import time seconds = 0 while True:
seconds += 1
curr_min = str(seconds / 60)
curr_sec = str(seconds % 60) if len(curr_sec) != 2:
if len(curr_min) != 2:
print "0%s:0%s" % (curr_min, curr_sec)
else:
print "%s:0%s" % (curr_min, curr_sec)
else:
if len(curr_min) != 2:
print "0%s:%s" % (curr_min, curr_sec)
else:
print "%s:%s" % (curr_min, curr_sec) time.sleep(1)
os.system("cls")

计时器

注意,这里容易出错的是清屏指令的位置,如果把它放在time.sleep(1)的前面, 将会导致刚

一打印出来就即刻清屏,也就是根本显示不出时间信息......

方法2: 是用while循环和从1到61的for循环,当秒迭代到60时,我们再让它变成00,同时让分钟加1

 # coding: utf-8

 import os, time

 curr_min = 0

 while True:
for curr_sec in range(1, 61):
if curr_sec == 60:
curr_sec = 00
curr_min += 1 if len(str(curr_sec)) != 2:
if len(str(curr_min)) != 2:
print "0%s:0%s" % (curr_min, curr_sec)
else:
print "%s:0%s" % (curr_min, curr_sec)
else:
if len(str(curr_min)) != 2:
print "0%s:%s" % (curr_min, curr_sec)
else:
print "%s:%s" % (curr_min, curr_sec) time.sleep(1)
os.system("cls")

点我

【Time系列三】简单的计时器(秒表)的更多相关文章

  1. sql server 备份与恢复系列三 简单恢复模式下的备份与还原

    一.概述 前面讲了备份的一些理论知识,这篇开始讲在简单恢复模式下的备份与还原.在简单模式下是不能做日志备份的,发生灾难后,数据库最后一次备份之后做的数据修改将是全部丢失的,所以在生产环境下,数据又很重 ...

  2. 前端构建大法 Gulp 系列 (三):gulp的4个API 让你成为gulp专家

    系列目录 前端构建大法 Gulp 系列 (一):为什么需要前端构建 前端构建大法 Gulp 系列 (二):为什么选择gulp 前端构建大法 Gulp 系列 (三):gulp的4个API 让你成为gul ...

  3. Web 开发人员和设计师必读文章推荐【系列三十】

    <Web 前端开发精华文章推荐>2014年第9期(总第30期)和大家见面了.梦想天空博客关注 前端开发 技术,分享各类能够提升网站用户体验的优秀 jQuery 插件,展示前沿的 HTML5 ...

  4. MySQL并发复制系列三:MySQL和MariaDB实现对比

    http://blog.itpub.net/28218939/viewspace-1975856/ 并发复制(Parallel Replication) 系列三:MySQL 5.7 和MariaDB ...

  5. WCF编程系列(三)地址与绑定

    WCF编程系列(三)地址与绑定   地址     地址指定了接收消息的位置,WCF中地址以统一资源标识符(URI)的形式指定.URI由通讯协议和位置路径两部分组成,如示例一中的: http://loc ...

  6. 【JAVA编码专题】 JAVA字符编码系列三:Java应用中的编码问题

    这两天抽时间又总结/整理了一下各种编码的实际编码方式,和在Java应用中的使用情况,在这里记录下来以便日后参考. 为了构成一个完整的对文字编码的认识和深入把握,以便处理在Java开发过程中遇到的各种问 ...

  7. RDLC报表系列(一) 简单的动态数据绑定和配置

    RDLC系列链接 RDLC报表系列(一) 简单的动态数据绑定和配置  RDLC报表系列(二) 行分组 RDLC报表系列(三) 总计和折叠 RDLC报表系列(四) 矩阵 RDLC报表系列(五) 简单的图 ...

  8. 系列三VisualSvn Server

    原文:系列三VisualSvn Server VisualSvn Server介绍 1 .VisualSvn Server  VisualSvn Server是免费的,而VisualSvn是收费的.V ...

  9. FrameBuffer系列 之 简单编程

    一.Linux的帧缓冲设备 帧缓冲(framebuffer)是 Linux为显示设备提供的一个接口,把显存抽象后的一种设备,他允许上层应用程序在图形模式下直接对显示缓冲区进行读写操作.这种操作是抽象的 ...

随机推荐

  1. ajaxFileUpload+struts2实现多文件上传

    以前有介绍过ajaxFileUpload实现文件上传,但那是单文件的,这次介绍多文件上传. 单文件上传参考:http://blog.csdn.net/itmyhome1990/article/deta ...

  2. linux学习之linux的hostname修改详解《转》

    linux的hostname是一个kernel变量,可以通过hostname命令来查看本机的hostname.也可以直接cat /proc/sys/kernel/hostname查看. #hostna ...

  3. Dalvik虚拟机的垃圾收集机制

    垃圾收集机制是Java虚拟机共有的特性, 这里介绍Dalvik虚拟机的垃圾收集机制特点. 在android2.3之前,有以下几个特点: 1.  垃圾收集线程在执行的时候,其它线程都停止. 2.  一次 ...

  4. 服务端获取客户端html页面内容-2013-6-28-2

    客户端怎么提交  整个html页面?    分析:      1>我们知道b/s模式,也知道http协议.服务端想要获取客户端的数据,客户端就 必须提交给它,服务器才能获取到.     2> ...

  5. ajaxfileupload 实现多文件上传

    官网下载ajaxfileupload.js: 修改源码: jQuery.extend({ createUploadIframe: function(id, uri) { //create frame ...

  6. 查找附近的wifi密码

    无意之间看到能破解附近wifi密码的诀窍,赶紧存储下来. 1. 首先打开终端 2. 在没有网路的情况下输入: netsh wlan show profiles 结果如下(自己的): 这些'用户配置文件 ...

  7. Python版C语言词法分析器

    #!/usr/bin/python # -*- coding: utf-8 -*- import sys from Tkinter import * from tkFont import * from ...

  8. Redmine管理项目2-邮件通知

    下面是为Redmine配置邮件通知 配置文件 config/configuration.yml 是 Redminde 的配置文件,里面有非常多的选项,邮件通知.附件保存地址. SCM .rmagick ...

  9. Oracle 11G R2 在windows server 2008 64位安装时提示:无法在windows "开始"菜单或桌面上创建项

    错误代码及解释:  在windows server 2008 64 位操作系统中安装 oracle 11G R2 64位 版本时提示:无法在windows "开始"菜单或桌面上创建 ...

  10. tomcat部署war包时连接被重置(修改tomcat上传限制)

    相对目录:apache-tomcat-7.0.67/webapps/manager/WEB-INF/web.xml 500M的计算:500*1024*1024 <multipart-config ...