python画出来的电子时钟

先看效果图(windows下):




在IDLE下没有刷新显示的功能:



画数字的时候是一行一行画出来的,很幸苦。

注释没用中文,因为在windows cmd下运行会出错,IDLE下无所谓

获得时间:

time.strftime('%Y-%m-%d',time.localtime(time.time()))

其中的格式有下列:

%y 两位数的年份表示(00-99)
%Y 四位数的年份表示(000-9999)
%m 月份(01-12)
%d 月内中的一天(0-31)
%H 24小时制小时数(0-23)
%I 12小时制小时数(01-12) 
%M 分钟数(00=59)
%S 秒(00-59)

%a 本地简化星期名称
%A 本地完整星期名称
%b 本地简化的月份名称
%B 本地完整的月份名称
%c 本地相应的日期表示和时间表示
%j 年内的一天(001-366)
%p 本地A.M.或P.M.的等价符
%U 一年中的星期数(00-53)星期天为星期的开始
%w 星期(0-6),星期天为星期的开始
%W 一年中的星期数(00-53)星期一为星期的开始
%x 本地相应的日期表示
%X 本地相应的时间表示
%Z 当前时区的名称


代码(python2.5.4):

import time
import os

#print the num(0-9)
def printline(line,num):
    if line==1:
        if num==1:
            print '   # ',
        if num==0 or num==2 or num==3 or num==5 or num==6 or num==7 or num==8 or num==9:
            print '#### ',
        if num==4:
            print '#  # ',
    if line==2:
        if num==1:
            print '   # ',
        if num==2 or num==3 or num==7:
            print '   # ',
        if num==4 or num==8 or num==9 or num==0:
            print '#  # ',
        if num==5 or num==6:
            print '#    ',
    if line==3:
        if num==1:
            print '   # ',
        if num==2 or num==3 or num==4 or num==5 or num==6 or num==8 or num==9:
            print '#### ',
        if num==7:
            print '   # ',
        if num==0:
            print '#  # ',
    if line==4:
        if num==1:
            print '   # ',
        if num==2:
            print '#    ',
        if num==3 or num==4 or num==5 or num==7 or num==9:
            print '   # ',
        if num==6 or num==8 or num==0:
            print '#  # ',
    if line==5:
        if num==1:
            print '   # ',
        if num==2 or num==3 or num==5 or num==6 or num==8 or num==9 or num==0:
            print '#### ',
        if num==4 or num==7:
            print '   # ',

#print the time
def printtime(hour,minute,second):

    h=int(hour)
    m=int(minute)
    s=int(second)

    hn=divmod(h,10)
    mn=divmod(m,10)
    sn=divmod(s,10)
    #print hn
    
    for i in range(1,6):
        printline(i,hn[0])
        printline(i,hn[1])
        if i==2 or i==4:
            print ' # ',
        else:
            print '   ',
            
        printline(i,mn[0])
        printline(i,mn[1])
        if i==2 or i==4:
            print ' # ',
        else:
            print '   ',
            
        printline(i,sn[0])
        printline(i,sn[1])
        print ''
        
#get the local System time
s=time.strftime('%S',time.localtime(time.time()))

jiange=int(raw_input("input the refresh time(second):"))

while True:
    hour=time.strftime('%H',time.localtime(time.time()))
    minute=time.strftime('%M',time.localtime(time.time()))
    second=time.strftime('%S',time.localtime(time.time()))
    #print hour+":"+minute+":"+second    

    if int(second)-int(s)>=jiange:
        os.system("cls")
        printtime(hour,minute,second)
        print '\n\n'
        s=time.strftime('%S',time.localtime(time.time()))    


你可能感兴趣的:(python和java)