亲宝软件园·资讯

展开

Python Turtle

老师好我叫余同学 人气:0

前期准备

首先,使用Python内置的Turtle绘图库需要在程序前添加以下代码:

import turtle

也可以写成这样:

from turtle import *

我们来讲一讲它们的区别:

使用import时,需要定义一个变量作为参数控制项,如:

import turtle
t=turtle.Pen()
# 画图
t.forward(10) # 向右画10像素,详见下表

而使用from时,可以直接命令程序,不需要多余语句

from turtle import *

# 画图
forward(10) # 向右画10像素,详见下表

基本函数与用法

绘画图形

1.画一个正方形

import turtle

t=turtle.Pen()
t.pencolor("orange") # 画笔颜色设置为橙色
for i in range(1,5):
    t.fd(50) # 向右画50像素
    t.lt(90) # 转90度,画下一条边

2.画一个三角形

步骤:先画一条边,右转120°,再画一条边,右转120°,最后画一条边

import turtle

t=turtle.Pen()
t.pencolor("orange") # 画笔颜色设置为橙色
t.fd(150)
t.rt(120)
t.fd(150)
t.rt(120)
t.fd(150)

3.画一个八角星

import turtle
t=turtle.Pen()
t.pencolor("orange")
for x in range(1,9): # 执行8次
	t.fd(100)
	t.lt(135)

4.画一个八边形

重点:每画一条边后都旋转45°

import turtle

t=turtle.Pen()
t.pencolor("orange")
for i in range(1,9): #循环8次
    t.forward(50) #画线
    t.right(45) #转向

我们还能通过Turtle画一些有趣的图形

5.其他图形

#test 1.1
import turtle

t=turtle.Pen()
t.pencolor("orange")
for i in range(1,4):
    t.fd(50)
    t.rt(120)
    t.fd(50)
    t.rt(120)
    t.fd(50)

import turtle         #导入turtle库
t = turtle.Pen()
t.pencolor("orange")
for i in range(5):
    t.forward(100)      # 向右移动300
    t.right(180-180/5)  # 180-五角星的内角和/5
t.done()

到现在为止,我们画的图形都只有一种颜色,那么,怎样才能画出多种颜色的图案呢?

我们可以先定义一个颜色列表,在每次画的时候随机取出一种颜色,就可以画出多彩的图案

colors=["red","orange","yellow","green","blue","purple"]

随机取出颜色的代码:

t.pencolor([colors%5]) 

No.1、多彩的五角星

import turtle         #导入turtle库
t = turtle.Pen()
colors=["red","orange","yellow","green","blue","purple"]
for i in range(5):
	t.pencolor(colors[i%5])
    t.forward(100)      # 向右移动300
    t.right(180-180/5)  # 180-五角星的内角和/5
t.done()

No.2、多彩的八角星

import turtle
t=turtle.Pen()
colors=["red","orange","yellow","green","blue","purple"]
for i in range(1,9): # 执行8次
	t.pencolor(colors[i%6])
	t.fd(100)
	t.lt(135)

No.3、四圆镶嵌

import turtle
t=turtle.Pen()
colors=["red","green","yellow","blue"]
for i in range(1,100):
	t.pencolor(colors[i%4])
	t.circle(i) #画圆
	t.lt(91)

No.4、彩虹螺旋

import turtle
t=turtle.Pen()
colors=["red","orange","yellow","green","blue","purple"]
turtle.bgcolor("black")
for i in range(500000):
	t.pencolor(colors[i%6])
	t.fd(i)
	t.lt(64)
	t.width(i/10-1)

加载全部内容

相关教程
猜你喜欢
用户评论