参考视频:B站BV1JL4y1x7xC
#PythonDraw.py
import turtle
'''
import <库名>
<库名>.<函数名>(<函数参数>)
不会出现函数重名问题
'''
turtle.setup(650, 350, 200, 200) #setup()设置窗体大小及位置 turtle.setup(width, height, startx, starty) 此函数不是必须的,后两个参数可省略
turtle.penup() #别名 turtle.pu()
turtle.fd(-250)
turtle.pendown() #别名 turtle.pd()
turtle.pensize(25) #别名 turtle.width()
turtle.pencolor("purple")
turtle.seth(-40) #seth()只改变海龟行进方向,不行进 turtle.seth(angle) angle为绝对度数
for i in range(4):
turtle.circle(40, 80)
turtle.circle(-40, 80)
turtle.circle(40, 80 / 2)
turtle.fd(40)
turtle.circle(16, 180)
turtle.fd(40 * 2 / 3)
turtle.done() #运行后不会退出
#PythonDraw进阶版
from turtle import *
'''
from <库名> import <函数名>
from <库名> import *
<函数名>(<函数参数>)
可能会出现函数重名问题
改进方法:
from <库名> as <库别名>
<库别名>.<函数名>(<函数参数>)
'''
setup(650, 350, 200, 200)
penup()
fd(-250)
pendown()
pensize(25)
pencolor("purple")
seth(-40)
for i in range(4):
circle(40, 80)
circle(-40, 80)
circle(40, 80/2)
fd(40)
circle(16, 180)
fd(40 * 2/3)
done()
#PythonDraw再进阶版
import turtle as t
'''
from <库名> as <库别名>
<库别名>.<函数名>(<函数参数>)
'''
t.setup(650, 350, 200, 200)
t.penup()
t.fd(-250)
t.pendown()
t.pensize(25)
t.pencolor("purple")
t.seth(-40)
for i in range(4):
t.circle(40, 80)
t.circle(-40, 80)
t.circle(40, 80/2)
t.fd(40)
t.circle(16, 180)
t.fd(40 * 2/3)
t.done()
小结
'''
绝对坐标:
turtle.goto(x, y) 让处于任意位置的海龟到达(x,y)
海龟坐标:
原始:
海龟头朝右,尾巴朝左,左手朝上,右手朝下
向海龟的正前方运行 turtle.fd(d)
向海龟的反方向运行 turtle.bk(d)
以海龟当前位置左侧的某一个点为圆心进行曲线运行 turtle.circle(r,angle)
海龟角度:
turtle.left(angle)
turtle.right(angle)
RGB:
turtle.colormode(mode)
turtle.colormode(1.0) 所有代码都使用RGB小数值模式(0-1) (x/255,x/255,x/255)
turtle.colormode(255) 所有代码都使用RGB整数值模式(0-255) (0-255,0-255,0-255)
画笔控制函数
turtle.penup() 别名 turtle.pu() 画笔抬起
turtle.pendown() 别名 turtle.pd() 画笔落下
成对出现
turtle.pensize(width) 别名 turtle.width(width) 画笔宽度
turtle.pencolor(color) color为颜色字符串或r,g,b值 修改画笔颜色
-颜色字符串: turtle.pencolor("purple")
-RGB的小数值: turtle.pencolor(0.63, 0.13, 0.94)
-RGB的元组值: turtle.pencolor((0.63, 0.13, 0.94))
运动控制函数:
控制海龟行进:走直线&走曲线
turtle.forward(d) 别名 turtle.fd(d) 走直线 d:行进距离,可以为负数
turtle.circle(r, extent=None) 根据半径r绘制extent角度的弧形
r:默认圆心在海龟左手r距离的位置
extent:绘制角度,默认是360度整圆
方向控制函数:
turtle.setheading(angle) 别名 turtle.seth(angle)
turtle.left(angle)
turtle.right(angle)
循环语句:
for <变量> in range (<参数>)
<被循环执行的语句>
range()函数:
range(N)
产生0到N-1的整数序列,共N个
range(M,N)
产生M到N-1的整数序列,共N-M个
'''