【#文档大全网# 导语】以下是®文档大全网的小编为您整理的《我赌你没见过这么酷的python日期绘制效果,拿来做练手项目再合适不过了,既好看又好用...》,欢迎阅读!
效果图
源代码
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) turtle.penup() turtle.fd(-300) turtle.pensize(5) # 日期格式化
drawDate(time.strftime("%Y年%m月%d日",time.gmtime())) # 隐藏那个箭头 turtle.hideturtle() turtle.done()
# 调用主函数 main()
本文来源:https://www.wddqxz.cn/ce87560177eeaeaad1f34693daef5ef7bb0d121d.html