《零基础学Python》学习笔记二
冒险二 使用Turtle图形函数画图
1、引入模块
import turtle
2、向前(后)移动指针100步
turtle.forward(100) #向前100单位
turtle.forward(-100)#向后100单位
3、旋转指针指向
turtle.right(90)#顺时针旋转90°
turtle.left(-90)#顺时针旋转90°
turtle.right(-90)#逆时针旋转90°
turtle.left(90) #逆时针旋转90°
right( )函数、left( )函数、forward( )函数的参数都可以是变量
4、画螺旋线和圆形
#画螺旋折线
import turtle
length = 0
angle = 90
while length < 200:
turtle.forward (length)
turtle.right(angle)
length = length + 10
#画圆形
import turtle
repeats = 0
while repeats < 360:
turtle.forward(1)
turtle.right(1)
repeats = repeats + 1
5、画n边形
import turtle
#raw_input()输出的数据是字符型
#int()是类型转换
sides = int (raw_input("Enter the number of sides for your shape : "))
angle = 360.0 / sides
length = 400.0 / sides
for side in range(sides):
turtle.forward(length)
turtle.right(angle)
#画完图之后保持窗口打开状态
turtle.done()
6、给图形填充颜色
#加在上一段代码的for循环前面
turtle.fillcolor("blue")
turtle.bigin_fill()
#加在for循环结束后
turtle.end_fill()
7、定义函数
import turtle
def drawShape(sides, length):
angle = 360.0 / sides
for side in range(sides):
turtle.forward(length)
turtle.right(angle)
def moveTurtle(x, y):
#penup()把笔从纸上拿开,此时移动光标不会画出图线
turtle.penup()
#移动光标
turtle.goto(x,y)
#把笔落下来,再次开始画图
turtle.pendown()
#画正方形的函数
def drawSquare(length):
drawShape(4, length)
#画三角形
def drawTriangle(length):
drawShape(3,length)
#画圆形
def drawCircle(length):
drawShape(360,length)
#主程序
drawShape(4,10)
moveTurtle(60,30)
drwaShape(3,20)
turtle.done()
8、生成随机的图像
import turtle
import random
def drawShape(sides, length):
angle = 360.0 / sides
for side in range(sides):
turtle.forward(length)
turtle.right(angle)
def moveTurtle(x, y):
#penup()把笔从纸上拿开,此时移动光标不会画出图线
turtle.penup()
#移动光标
turtle.goto(x,y)
#把笔落下来,再次开始画图
turtle.pendown()
#画正方形的函数
def drawSquare(length):
drawShape(4, length)
#画三角形
def drawTriangle(length):
drawShape(3,length)
#画圆形
def drawCircle(length):
drawShape(360,length)
def drawRandom():
x = random.randrange(-200,200)
y = random.randrange(-200,200)
length = random.randrange(75) #生成0到75之间的数
shape = random.randrange(1,4)
moveTurtle(x, y)
if shape == 1:
drawSquare(length)
elif shape == 2:
drawTriangle(length)
elif shape == 3:
length = length % 4 # %取余运算
drawCircle(length)
#主函数
for shape in range(100):
drawRandom()
turtle.done()