Python绘制数码晶体管日期

(编辑:jimmy 日期: 2025/2/25 浏览:2)

本文实例为大家分享了Python绘制数码晶体管日期的具体代码,供大家参考,具体内容如下

源码:

drawLine(draw) 画一条线
drawDight(dight) 画一个数字
drawDate(date) 画一组数字

代码:

import turtle, time


def drawLine(draw):
 turtle.pendown() if draw else turtle.penup()
 turtle.fd(40)
 turtle.right(90)


def drawDight(dight):
 drawLine(True) if dight in [2, 3, 4, 5, 6, 8, 9] else drawLine(False)
 drawLine(True) if dight in [0, 1, 3, 4, 5, 6, 7, 8, 9] else drawLine(False)
 drawLine(True) if dight in [0, 2, 3, 5, 6, 8, 9] else drawLine(False)
 drawLine(True) if dight in [0, 2, 6, 8] else drawLine(False)
 turtle.left(90)
 drawLine(True) if dight in [0, 4, 5, 6, 8, 9] else drawLine(False)
 drawLine(True) if dight in [0, 2, 3, 5, 6, 7, 8, 9] else drawLine(False)
 drawLine(True) if dight in [0, 1, 2, 3, 4, 7, 8, 9] else drawLine(False)
 turtle.right(180)
 turtle.penup()
 turtle.fd(20)


def drawDate(date):
 turtle.pencolor("red")
 for i in date:
  if i == '-':
   turtle.write('年', font=("微软雅黑", 32, "normal"))
   turtle.pencolor("green")
   turtle.fd(80)
  elif i == '=':
   turtle.write('月', font=("微软雅黑", 32, "normal"))
   turtle.pencolor("blue")
   turtle.fd(80)
  elif i == '+':
   turtle.write('日', font=("微软雅黑", 32, "normal"))
   turtle.pencolor("red")
   turtle.fd(80)
  elif i == '/':
   turtle.write('时', font=("微软雅黑", 32, "normal"))
   turtle.pencolor("green")
   turtle.fd(80)
  elif i == '*':
   turtle.write('分', font=("微软雅黑", 32, "normal"))
   turtle.pencolor("blue")
   turtle.fd(80)
  elif i == '.':
   turtle.write('秒', font=("微软雅黑", 32, "normal"))
   turtle.fd(80)
  else:
   drawDight(eval(i))


if __name__ == '__main__':
 # turtle.setup() 我用的是pycharm,所以没有设置画布,idle下需要设置
 turtle.penup()
 turtle.fd(-350)
 turtle.pensize(5)
 turtle.speed(1000) # 速度再大也没感觉了
 drawDate(time.strftime('%Y-%m=%d+', time.localtime()))
 # 这里千万不要用time.gmtime()),获取的是UTC时区(0时区)的struct_time
 # 踩了半天坑

 turtle.right(90)
 turtle.fd(120)
 turtle.right(90)
 turtle.fd(660)
 turtle.right(180)
 drawDate(time.strftime('%H/%M*%S.', time.localtime()))
 turtle.hideturtle()
 turtle.done()

效果图:

Python绘制数码晶体管日期

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?