• 售前

  • 售后

热门帖子
入门百科

Python绘制数码晶体管日期

[复制链接]
后会无期846 显示全部楼层 发表于 2021-10-25 19:41:08 |阅读模式 打印 上一主题 下一主题
本文实例为各人分享了Python绘制数码晶体管日期的详细代码,供各人参考,详细内容如下
源码:
  1. drawLine(draw) 画一条线
  2. drawDight(dight) 画一个数字
  3. drawDate(date) 画一组数字
复制代码
代码:
  1. import turtle, time
  2. def drawLine(draw):
  3. turtle.pendown() if draw else turtle.penup()
  4. turtle.fd(40)
  5. turtle.right(90)
  6. def drawDight(dight):
  7. drawLine(True) if dight in [2, 3, 4, 5, 6, 8, 9] else drawLine(False)
  8. drawLine(True) if dight in [0, 1, 3, 4, 5, 6, 7, 8, 9] else drawLine(False)
  9. drawLine(True) if dight in [0, 2, 3, 5, 6, 8, 9] else drawLine(False)
  10. drawLine(True) if dight in [0, 2, 6, 8] else drawLine(False)
  11. turtle.left(90)
  12. drawLine(True) if dight in [0, 4, 5, 6, 8, 9] else drawLine(False)
  13. drawLine(True) if dight in [0, 2, 3, 5, 6, 7, 8, 9] else drawLine(False)
  14. drawLine(True) if dight in [0, 1, 2, 3, 4, 7, 8, 9] else drawLine(False)
  15. turtle.right(180)
  16. turtle.penup()
  17. turtle.fd(20)
  18. def drawDate(date):
  19. turtle.pencolor("red")
  20. for i in date:
  21.   if i == '-':
  22.    turtle.write('年', font=("微软雅黑", 32, "normal"))
  23.    turtle.pencolor("green")
  24.    turtle.fd(80)
  25.   elif i == '=':
  26.    turtle.write('月', font=("微软雅黑", 32, "normal"))
  27.    turtle.pencolor("blue")
  28.    turtle.fd(80)
  29.   elif i == '+':
  30.    turtle.write('日', font=("微软雅黑", 32, "normal"))
  31.    turtle.pencolor("red")
  32.    turtle.fd(80)
  33.   elif i == '/':
  34.    turtle.write('时', font=("微软雅黑", 32, "normal"))
  35.    turtle.pencolor("green")
  36.    turtle.fd(80)
  37.   elif i == '*':
  38.    turtle.write('分', font=("微软雅黑", 32, "normal"))
  39.    turtle.pencolor("blue")
  40.    turtle.fd(80)
  41.   elif i == '.':
  42.    turtle.write('秒', font=("微软雅黑", 32, "normal"))
  43.    turtle.fd(80)
  44.   else:
  45.    drawDight(eval(i))
  46. if __name__ == '__main__':
  47. # turtle.setup() 我用的是pycharm,所以没有设置画布,idle下需要设置
  48. turtle.penup()
  49. turtle.fd(-350)
  50. turtle.pensize(5)
  51. turtle.speed(1000) # 速度再大也没感觉了
  52. drawDate(time.strftime('%Y-%m=%d+', time.localtime()))
  53. # 这里千万不要用time.gmtime()),获取的是UTC时区(0时区)的struct_time
  54. # 踩了半天坑
  55. turtle.right(90)
  56. turtle.fd(120)
  57. turtle.right(90)
  58. turtle.fd(660)
  59. turtle.right(180)
  60. drawDate(time.strftime('%H/%M*%S.', time.localtime()))
  61. turtle.hideturtle()
  62. turtle.done()
复制代码
结果图:

以上就是本文的全部内容,盼望对各人的学习有所资助,也盼望各人多多支持草根技能分享。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作