💻前言
以下代码试着自己运行一下✏️,会有意想不到的效果哦🤩
✨简陋 简单写法
import turtle
def drawline(draw):
turtle.pendown() if draw else turtle.penup()
turtle.fd(40)
turtle.right(90)
def drawdigit(digit):
drawline(True) if digit in [2, 3, 4, 5, 6, 8, 9] else drawline(False)
drawline(True) if digit in [0, 1, 3, 4, 5, 6, 7, 8, 9] else drawline(False)
drawline(True) if digit in [0, 2, 3, 5, 6, 8, 9] else drawline(False)
drawline(True) if digit in [0, 2, 6, 8] else drawline(False)
turtle.left(90)
drawline(True) if digit in [0, 4, 5, 6, 8, 9] else drawline(False)
drawline(True) if digit in [0, 2, 3, 5, 6, 7, 8, 9] else drawline(False)
drawline(True) if digit in [0, 1, 2, 3, 4, 7, 8, 9] else drawline(False)
turtle.left(180)
turtle.penup()
turtle.fd(20)
def drawdate(date):
for i in date:
drawdigit(eval(i))
def main():
turtle.setup(800, 350, 200, 200)
turtle.penup()
turtle.fd(-300)
turtle.pensize(5)
drawdate(20200421)
turtle.hideturtle()
turtle.done()
main()
🔥运行结果
🔮高级写法
import turtle, time
def drawgap():
turtle.penup()
turtle.fd(5)
def drawline(draw):
drawgap()
turtle.pendown() if draw else turtle.penup()
turtle.fd(40)
drawgap()
turtle.right(90)
def drawdigit(digit):
drawline(True) if digit in [2, 3, 4, 5, 6, 8, 9] else drawline(False)
drawline(True) if digit in [0, 1, 3, 4, 5, 6, 7, 8, 9] else drawline(False)
drawline(True) if digit in [0, 2, 3, 5, 6, 8, 9] else drawline(False)
drawline(True) if digit in [0, 2, 6, 8] else drawline(False)
turtle.left(90)
drawline(True) if digit in [0, 4, 5, 6, 8, 9] else drawline(False)
drawline(True) if digit in [0, 2, 3, 5, 6, 7, 8, 9] else drawline(False)
drawline(True) if digit in [0, 1, 2, 3, 4, 7, 8, 9] else drawline(False)
turtle.left(180)
turtle.penup()
turtle.fd(20)
def drawdate(date):
turtle.pencolor(red)
for i in date:
if i == -:
turtle.write(年, font=(Arial, 18, normal))
turtle.pencolor(green)
turtle.fd(40)
elif i == =:
turtle.write(月, font=(Arial, 18, normal))
turtle.pencolor(blue)
turtle.fd(40)
elif i == +:
turtle.write(日, font=(Arial, 18, normal))
else:
drawdigit(eval(i))
def main():
turtle.setup(800, 350, 200, 200)
turtle.penup()
turtle.fd(-300)
turtle.pensize(5)
drawdate(time.strftime(%Y-%m=%d+, time.gmtime()))
turtle.hideturtle()
turtle.done()
main()
🎉运行结果