Python绘制数码晶体管日期

本文实例为大家分享了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绘制数码晶体管日期

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

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

请登录后发表评论

    暂无评论内容