python海龟绘图代码简单(python模块之海龟绘图)
python海龟绘图代码简单(python模块之海龟绘图)def draw_gear(): # 绘制齿轮形状 turtle.color("red" "yellow") # 画图颜色,填充颜色 # turtle.pencolor("red") # 画笔颜色 # turtle.fillcolor("yellow") # 填充颜色 turtle.begin_fill() # 开始填充 turtle.speed(5) # 速度 "fastest": 0 最快 "fast": 10 快 "normal": 6 正常 "slow": 3 慢 "slowest": 1 最慢 # turtle.showturtle() # 设置海龟可见 wh
最近家里小朋友在自学编程,天天跟着iPad里的课程编写游戏,其实也就是个玩!
Scratch课程自己学习完了,开始学习python了,不过最近防控很严,也一直没有机会回去给他安装环境,所以他也只能学习,不能实践,正好利用这个时间,我也学习一下turtle和pygame模块。
turtle 模块是python自带的,提供面向对象和面向过程两种形式的海龟绘图基本组件。由于它使用 tkinter 实现基本图形界面,因此需要安装了 Tk 支持的 Python 版本。
面向对象的接口主要使用“2 2”个类:
- TurtleScreen 类定义图形窗口作为绘图海龟的运动场。它的构造器需要一个 tkinter.Canvas 或 ScrolledCanvas 作为参数。应在 turtle 作为某个程序的一部分的时候使用。Screen() 函数返回一个 TurtleScreen 子类的单例对象。此函数应在 turtle 作为独立绘图工具使用。作为一个单例对象,其所属的类是不可被继承的。TurtleScreen/Screen 的所有方法还存在对应的函数,即作为面向过程的接口组成部分。
- RawTurtle (别名: RawPen) 类定义海龟对象在 TurtleScreen 上绘图。它的构造器需要一个 Canvas ScrolledCanvas 或 TurtleScreen 作为参数,以指定 RawTurtle 对象在哪里绘图。从 RawTurtle 派生出子类 Turtle (别名: Pen),该类对象在 Screen 实例上绘图,如果实例不存在则会自动创建。RawTurtle/Turtle 的所有方法也存在对应的函数,即作为面向过程的接口组成部分。
- 绘制齿轮形状
def draw_gear():
# 绘制齿轮形状
turtle.color("red" "yellow") # 画图颜色,填充颜色
# turtle.pencolor("red") # 画笔颜色
# turtle.fillcolor("yellow") # 填充颜色
turtle.begin_fill() # 开始填充
turtle.speed(5) # 速度 "fastest": 0 最快 "fast": 10 快 "normal": 6 正常 "slow": 3 慢 "slowest": 1 最慢
# turtle.showturtle() # 设置海龟可见
while True:
turtle.forward(200) # 画图前进
turtle.left(170) # 画图左转
if abs(turtle.pos()) < 1: # 当前位置
break
turtle.end_fill() # 填充结束
turtle.done() # 画图结束
- 螺旋
from turtle import *
def draw_spiral():
t = Pen()
t.speed(0)
# setup(width=800 height=800)
colormode(255) # 使用RGB颜色模式
for x in range(180):
t.color(random.randint(0 255) random.randint(0 255) random.randint(0 255))
t.forward(x)
# t.color(random.randint(0 255) random.randint(0 255) random.randint(0 255))
t.left(59)
t.forward(30)
done()
海龟制图原理很简单,计算坐标挺麻烦[抠鼻],接下来挑战个有难度的!