本文实例为大家分享了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()
效果图:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
© 版权声明
THE END
暂无评论内容