使用python的turtle库画图

引、想要使用python作画吗? 那就用turtle库吧,使用它可以在屏幕的画板上绘制出各种图像。操控这只turtle(海龟)在屏幕上爬行,根据坐标定位,沿途的足迹,就是你想要的图像。

一、使用方法:

1、引入方式(两种):

import turtle #导入turtle库,使用时通过turtle.function调用
from turtle import *  #导入turtle库中所有方法,直接通过function调用

2、控制画笔状态函数:

pendown() | pd() | down() #放下画笔,不作画
penup()   | pu() | up()   #拿起画笔,准备开始作画
pensize(width)   | width(width)  #设置画笔的宽度

3、控制画笔颜色的函数:

color()  #控制画笔颜色和填充颜色
begin_fill() | end_fill() #开始填充,结束填充
...

4、控制画笔运动函数:

forward(distance) | fd(dis)  #画笔向前移动
backward(distance)| bk(dis) | back(dis)  #向后移动
right(angle) | rt(angle)  #画笔朝向右转angle的角度
left(angle)  | lt(angle)  #画笔朝向左转angle的角度
goto(x,y)  #移动画笔到坐标(x,y)处

更多详细文档可查阅python官方对于turtle某块的介绍:
https://docs.python.org/2/library/turtle.html#module-turtle

二、实战

这里使用的是python的IDLE
1、五边形:

#导入turtle库,使用时需声明方法来自turtle库,形如turtle.function()
import turtle 

if __name__ ==  '__main__':  #文件作为脚本执行时,才执行的代码
    while True:  
        turtle.forward(100)   #画笔朝前移动100单位
        turtle.right(72)      #画笔朝向右转72度,因为360/5=72度
        '''
        turtle.pos()返回一个2维向量,abs(vec2D)返回这个向量的值,可以理解为画笔所在位置(x,y)与默认出发点(0,0)的距离
        '''
        if abs(turtle.pos()) < 1:  
            break

结果:
这里写图片描述
注:图上的小游标就是那只turtle了,箭头就是海龟的朝向

2、五角星:类似五边形,重新计算角度

import turtle

if __name__ ==  '__main__':
    turtle.pensize(10)  #画笔宽度10单位
    turtle.color("black","yellow")  #画笔颜色black,填充颜色yellow,也可以用rgb格式
    turtle.begin_fill()  #开始填充
    while True:
        turtle.forward(200)
        turtle.right(144)  #五角星每个角为36°,180-36=144
        if abs(turtle.pos()) < 1:
            break
    turtle.end_fill()  #结束填充

结果:
这里写图片描述

3、连环

import turtle


def drawCircle(color,radix):
    turtle.color(color)   #设置画笔颜色
    turtle.circle(radix)  #画圈,半径为50


if __name__ ==  '__main__':
    radix = 50
    pensize = 5
    fd = 4 / 5 * radix #forward distance
    color = ["black","yellow","blue","green","purple"]
    turtle.pensize(pensize)
    for x in range(5):
        drawCircle(color[x],radix)
        turtle.up()  #提起画笔,不作画
        turtle.forward(fd)  #向前移动
        turtle.down()   #下放画笔,准备作画

结果:
这里写图片描述

好玩

发布了52 篇原创文章 · 获赞 16 · 访问量 6万+

猜你喜欢

转载自blog.csdn.net/Tuzi294/article/details/78198833