用py实现一个时钟

双十一啥都没买,一没妹纸二没钱,干脆坐电脑前面写代码吧。看到 @阿里云安全 发的微博:

05.jpg

我想,这个简单啊,作为一个忠实的py党,一分钟写了个简单的:

06.jpg

如此如此:

后来想想,我去,不行说好的时钟呢,这就是个计时器啊。时钟一定要长的够帅!

好我们开始认认真真写时钟,作为一个忠诚的windows党,我一向考虑东西会优先选择windows下。所以有些linux下优越的工具我就用不了了,字符画得我自己找。

我5月份的时候曾经开发了一个在线工具平台,其中有个字符画生成工具:http://tool.p1ng.pw/asciiart.html

选了个字体starwars,有点味道,可以当咱们时钟的样式:

07.jpg

然后我把每个字符保存在py的数组tchar中,这样我用tchar[2]就能得到“2”的字符画。代码如下:

#!/usr/bin/env python 
import time,sys,os
tchar = [
'''  ___   
 / _   
| | | | 
| | | | 
| |_| | 
 ___/  
        ''',''' __  
/_ | 
 | | 
 | | 
 | | 
 |_| ''',''' ___   
|__   
   ) | 
  / /  
 / /_  
|____| ''',''' ____   
|___   
  __) | 
 |__ <  
 ___) | 
|____/  ''',''' _  _    
| || |   
| || |_  
|__   _| 
   | |   
   |_|   ''',''' _____  
| ____| 
| |__   
|___   
 ___) | 
|____/  ''','''   __   
  / /   
 / /_   
| '_   
| (_) | 
 ___/  ''',''' ______  
|____  | 
    / /  
   / /   
  / /    
 /_/     ''','''  ___   
 / _   
| (_) | 
 > _ <  
| (_) | 
 ___/  ''','''  ___   
 / _   
| (_) | 
 __, | 
   / /  
  /_/   '''
]
db = ''' _  
(_) 

 _  
(_) 
    '''

while(1):
  print 'n'.join([''.join([' '.join(((tchar[int(c)] if c.isdigit() else db).split('n'))[i]) for c in time.strftime('%H:%M:%S',time.localtime(time.time()))]) for i in range(6)])
  time.sleep(0.1)
  os.system('cls' if os.name == 'nt' else 'clear')

windows下确实没有什么好办法清屏,设置控制台颜色还得调用WINAPI(汗),于是我只能用cls命令了。

py的确很简洁,~~lamdba不支持try..except也让我好一番失望,本以为代码可以更短的,但为了显示“:”,还是需要作出一些牺牲的,我另定义了一个tochar()函数。 ~~ 还是用if语句替换吧……既然都追求短了,那就再短点吧~~

当然字符画是可以换的,你可以将自己喜欢的字符画替换我给出来的这个,写一个自己范儿的“时钟”。

效果图:

相关推荐: YIT-CTF(二) 隐写术wp

题目链接:传送门 总的来说,YIT-CTF的图片隐写类不是很难,题目量也不是很大,都是很基础的一些隐写题目。 1.小心心 flag说:把我的小心心给你~~ 先把图片下下来,看图片没什么猫腻。。用winhex查看下图片里是否有隐藏信息 在图片的最后我们发现了隐藏…

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论