12岁的小学生来自制海龟时钟咯

import turtle
from datetime import *# 抬起画笔,向前运动一段距离放下
def skip(step):turtle.penup()turtle.forward(step)turtle.pendown()def mkHand(name, length):# 注册Turtle形状,建立表针Turtleturtle.reset()# 先反向运动一段距离,终点作为绘制指针的起点skip(-length * 0.1)# 开始记录多边形的顶点。当前的乌龟位置是多边形的第一个顶点。turtle.begin_poly()turtle.forward(length * 1.1)# 停止记录多边形的顶点。当前的乌龟位置是多边形的最后一个顶点。将与第一个顶点相连。turtle.end_poly()# 返回最后记录的多边形。handForm = turtle.get_poly()turtle.register_shape(name, handForm)def init():global secHand, minHand, houHand, printer# 重置Turtle指向北turtle.mode("logo")# 建立三个表针Turtle并初始化mkHand("secHand", 135)mkHand("minHand", 125)mkHand("houHand", 90)secHand = turtle.Turtle()secHand.shape("secHand")minHand = turtle.Turtle()minHand.shape("minHand")houHand = turtle.Turtle()houHand.shape("houHand")for hand in secHand, minHand, houHand:hand.shapesize(1, 1, 3)hand.speed(0)# 建立输出文字Turtleprinter = turtle.Turtle()# 隐藏画笔的turtle形状printer.hideturtle()printer.penup()# 绘制表盘
def setupClock(radius):# 建立表的外框turtle.reset()turtle.pensize(7)for i in range(60):# 向前移动半径值skip(radius)if i % 5 == 0:# 画长刻度线turtle.forward(20)# 回到中心点skip(-radius - 20)# 移动到刻度线终点skip(radius + 20)# 下面是写表盘刻度值,为了不与划线重叠,所以对于特殊位置做了处理if i == 0:turtle.write(int(12), align="center", font=("Courier", 14, "bold"))elif i == 30:skip(25)turtle.write(int(i/5), align="center", font=("Courier", 14, "bold"))skip(-25)elif (i == 25 or i == 35):skip(20)turtle.write(int(i/5), align="center", font=("Courier", 14, "bold"))skip(-20)else:turtle.write(int(i/5), align="center", font=("Courier", 14, "bold"))# 回到中心点skip(-radius - 20)else:# 画圆点turtle.dot(5)skip(-radius)# 顺时针移动6°turtle.right(6)def week(t):week = ["星期一", "星期二", "星期三","星期四", "星期五", "星期六", "星期日"]return week[t.weekday()]def date(t):y = t.yearm = t.monthd = t.dayreturn "%s %d%d" % (y, m, d)def tick():# 绘制表针的动态显示t = datetime.today()second = t.second + t.microsecond * 0.000001minute = t.minute + second / 60.0hour = t.hour + minute / 60.0secHand.setheading(6 * second)minHand.setheading(6 * minute)houHand.setheading(30 * hour)turtle.tracer(False)printer.forward(65)printer.write(week(t), align="center",font=("Courier", 14, "bold"))printer.back(130)printer.write(date(t), align="center",font=("Courier", 14, "bold"))printer.home()turtle.tracer(True)# 100ms后继续调用tickturtle.ontimer(tick, 100)def main():# 打开/关闭龟动画,并为更新图纸设置延迟。turtle.tracer(False)init()setupClock(160)turtle.tracer(True)tick()turtle.mainloop()if __name__ == "__main__":main()

我是12岁小学生,原创不易,求打赏

python自制海龟时钟相关推荐

  1. Python Turtle 海龟绘图详解官方文档中文版

    Python Turtle 海龟绘图详解 (官方文档中文版)-安徽省太湖中学陈晓中整理 概述 海龟绘图很适合用来引导孩子学习编程. 最初来自于 Wally Feurzeig, Seymour Pape ...

  2. python小海龟画房子编程_教孩子学Python编程之海龟画图(一)

    大家好,我是践行计算机教育刘老师,很高兴跟大家分享Python编程,建议5年级以上的学生学习.父母也可以陪着孩子一起学习Python编程,对于孩子学编程起到监督和辅助学习.下载我们Python编程工具 ...

  3. 「手把手教你」用Python量化海龟交易法则

    1引言 对于纯多头或空头的方向性策略而言,只有当证券价格是均值回归或趋势的,交易策略才能盈利.否则,如果价格是随机游走的,交易将无利可图(法玛有效市场假说).换句话说,目前各种纷繁复杂的所谓量化策略大 ...

  4. 用Python量化海龟交易法则

    1.引言 对于纯多头或空头的方向性策略而言,只有当证券价格是均值回归或趋势的,交易策略才能盈利.否则,如果价格是随机游走的,交易将无利可图(法玛有效市场假说).换句话说,目前各种纷繁复杂的所谓量化策略 ...

  5. 运用python进行海龟交易法回测

    海龟交易法作为最早的量化交易法,已经被利用了很多年了,我发现网络上有很多利用python进行海龟交易法回测的代码教程,而且都是先通过akshare库再通过均线组合的方式实现,但是其中大多会报错,小编找 ...

  6. 【手把手教你】用Python量化海龟交易法则

    点击"简说Python",选择"置顶/星标公众号" 福利干货,第一时间送达! 本文授权转载自Python金融量化,禁二次转载 作者:CuteHand 阅读文本大 ...

  7. 用Python量化海龟交易法则!

    1 引言 对于纯多头或空头的方向性策略而言, 只有当证券价格是均值回归或趋势的,交易策略才能盈利 .否则,如果价格是随机游走的,交易将无利可图(法玛有效市场假说).换句话说,目前各种纷繁复杂的所谓量化 ...

  8. 【原创佳作】用Python自制了一张网页,一键自动生成探索性数据分析报告

    今天小编带领大家用Python自制一个自动生成探索性数据分析报告这样的一个工具,大家只需要在浏览器中输入url便可以轻松的访问,如下所示 第一步 首先我们导入所要用到的模块,设置网页的标题.工具栏以及 ...

  9. Python小海龟turtle画汉字

    Python小海龟turtle画汉字 打印汉字 如果单纯想在turtle的界面输出汉字,可以直接使用turtle.write 打印出汉字. # 这个函数就是打印汉字 没有移动的轨迹 def write ...

  10. python游戏脚本dnf_一款Python自制的斗地主小游戏

    [实例简介] 一款Python自制的斗地主小游戏 [实例截图] [核心代码] 斗地主_Raffeale └── dist ├── avbin.dll ├── DouDiZhu.exe ├── gui_ ...

最新文章

  1. php 3 3公派算法代码,PHP常见算法合集代码实例
  2. IBM Installation Manager 工具概述(转)
  3. JavaScript = TypeScript 类入门
  4. scrapy 让指定的spider执行指定的pipeline
  5. 关于有多少个1的计算
  6. 一台电脑上安装5台tomcat 与 项目部署 probe
  7. Android核心分析 之二方法论探讨之概念空间篇
  8. 2019互联网公司端午礼盒大PK!
  9. 【第十届泰迪杯B题电力负荷预测代码】
  10. 苹果怎么解ID锁?苹果ID锁解锁办法汇总
  11. [转载]AutoCAD2013 以上利用AccoreConsole+ c# NetApi 批量处理图纸
  12. linux下删原来的盘符命令,linux中创建磁盘分区 删除分区
  13. 服务器的显示器无信号怎么解决办法,显示器无信号怎么办?显示器无信号解决办法大全...
  14. allegro 04_B class和subclass介绍
  15. [笨叔点滴6] 叔,这个git咋玩啊?
  16. 计算机 833学校,计算机专业考研院校排名分析
  17. 基于深度卷积神经网络(D-CNN)的图像去噪方法
  18. dfs 洛谷 P1605 迷宫
  19. 企业ERP管理软件有哪些?哪个好
  20. Inno Setup的下载、安装、中文向导文件等

热门文章

  1. Python-win32com模块
  2. win10打开蓝牙_WIN10蓝牙不能使用,开启蓝牙后不能识别到其它设备怎么办?
  3. 东方通tongweb的安装及使用(图文详细版)
  4. 牡丹-曹州牡丹:曹州牡丹
  5. java 递归层级拼接_使用递归方法拼接层级树
  6. 修改TIM的默认路径
  7. 一些常用的IOS开发网站
  8. hping3使用详解
  9. matlab图像加椒盐噪声,用matlab给图像加高斯噪声和椒盐噪声(不调用imnoise函数)...
  10. 五人表决器课程设计单片机c语言,基于单片机的五人表决器的设计.doc