Turtle绘图

绘图窗体:

turtle.done() #维持窗口
turtle.title(“绘制第一只海龟”) #窗口标题
turtle.setup(w, h, start_x, start_y) #设置窗体大小及位置

后两个参数可选;setup不是必须的

Turtle坐标

绝对坐标 海龟坐标 角度坐标

  • 绝对坐标

    image.png turtle.goto(x,y) #画笔位置

例如:
课程学习内容 - 图3

海龟坐标

image.png

角度坐标

(海龟角度与绝对角度)
课程学习内容 - 图5
课程学习内容 - 图6
例如:
课程学习内容 - 图7

画笔控制

画笔
turtle.penup() /pu()
turtle.pendown() /pd()
#宽度
turtle.pensize(宽度)
turtle.width(宽度)
#颜色
turtle.pencolor(颜色)

例如:turtle.pencolor(“gold”) #注意加引号

颜色类型:
字符串、小数、元组
课程学习内容 - 图8

RGB查询

链接:全网最细海龟 (turtle) 画图讲解 (二):窗口控制
课程学习内容 - 图9课程学习内容 - 图10
课程学习内容 - 图11

运动控制:

课程学习内容 - 图12 课程学习内容 - 图13
例子:
课程学习内容 - 图14

方向控制

绝对角度:
课程学习内容 - 图15
海龟角度
课程学习内容 - 图16

Time库

  • 三类函数:

课程学习内容 - 图17

时间获取:

课程学习内容 - 图18
课程学习内容 - 图19

时间格式化:

课程学习内容 - 图20
课程学习内容 - 图21 课程学习内容 - 图22

输出时间

Strftime:提取时间,用字符串输出
Strptime:把时间字符串转化为计算机时间
课程学习内容 - 图23

程序计时

课程学习内容 - 图24 课程学习内容 - 图25

  • 示例

    课程学习内容 - 图26

  1. #完整进度条
  2. import time
  3. scale=50
  4. print("开始执行".center(scale//2,"-")) #居中
  5. start=time.perf_counter() #记录开始时间
  6. for i in range(scale+1):
  7. a="*"*i
  8. b='.'*(scale-i)
  9. c=(i/scale)*100
  10. dur=time.perf_counter()-start #开始时间-当前时间
  11. print("\r{:^3.0f}%[{}->{}]{:.2f}s".format(c,a,b,dur),end='')
  12. # \r刷新输出 ^居中对齐
  13. time.sleep(0.1) #延时
  14. print("\n"+"执行结束".center(scale//2,'-'))
  15. # 需要把\n单独“”,因为后面用的字符格式center

三角函数

Math.asin()
Math.atan()
Math.acos()

image.pngimage.png 函数中用到的是弧度!


  • 应用举例 : 由正切值求相移角度:

    image.png 故近0.5*pi, 相移近于90