python海龟作图红绿灯_海龟作图—用Python绘图

python海龟作图红绿灯_海龟作图—用Python绘图一、关于Turtle“turtle是一个简单的绘图工具。它提供了一个海龟,你可以把它理解为一个机器人,只听得懂有限的指令”操纵海龟绘图有着许多的命令,这些命令可以划分为两种:一种为运动命令,一种为画笔控制命令。二、运动命令forward(degree)#向前移动距离degree代表距离backward(degree)#向后移动距离degree代表距离right(degree)#向右移动多少度lef…

大家好,又见面了,我是你们的朋友全栈君。

一、关于Turtle

“turtle是一个简单的绘图工具。它提供了一个海龟,你可以把它理解为一个机器人,只听得懂有限的指令”

操纵海龟绘图有着许多的命令,这些命令可以划分为两种:一种为运动命令,一种为画笔控制命令。

二、运动命令

forward(degree)

#向前移动距离degree代表距离

backward(degree)

#向后移动距离degree代表距离

right(degree)

#向右移动多少度

left(degree)

#向左移动多少度

goto(x,y)

#将画笔移动到坐标为x,y的位置

speed(speed)

#画笔绘制的速度范围[0,10]整数

三、画笔控制命令

down()

画笔落下,移动时绘制图形

up()

画笔抬起,移动时不绘制图形

setheading(degree)

海龟朝向,degree代表角度

reset()

恢复所有设置

pensize(width)

画笔的宽度

pencolor(colorstring)

画笔的颜色

fillcolor(colorstring)

绘制图形的填充颜色

fill(True)

fill(False)

四、程序体验

1.奥运五环

代码:

#绘制奥运五环

import turtle

turtle.width(15) #画笔粗细

turtle.color(“blue”)

turtle.circle(50)

turtle.penup()

turtle.goto(120,0)

turtle.down()

turtle.color(“black”)

turtle.circle(50)

turtle.penup()

turtle.goto(240,0)

turtle.down()

turtle.color(“red”)

turtle.circle(50)

turtle.penup()

turtle.goto(60,-50)

turtle.down()

turtle.color(“yellow”)

turtle.circle(50)

turtle.penup()

turtle.goto(180,-50)

turtle.down()

turtle.color(“green”)

turtle.circle(50)

显示效果:

20200426120639090354.png

2.使用递归,可以绘制出非常复杂的图形。例如,下面的代码可以绘制一棵分型树:

from turtle import *

# 设置色彩模式是RGB:

colormode(255)

lt(90)

lv = 14

l = 120

s = 45

width(lv)

# 初始化RGB颜色:

r = 0

g = 0

b = 0

pencolor(r, g, b)

penup()

bk(l)

pendown()

fd(l)

def draw_tree(l, level):

global r, g, b

# save the current pen width

w = width()

# narrow the pen width

width(w * 3.0 / 4.0)

# set color:

r = r + 1

g = g + 2

b = b + 3

pencolor(r % 200, g % 200, b % 200)

l = 3.0 / 4.0 * l

lt(s)

fd(l)

if level < lv:

draw_tree(l, level + 1)

bk(l)

rt(2 * s)

fd(l)

if level < lv:

draw_tree(l, level + 1)

bk(l)

lt(s)

# restore the previous pen width

width(w)

speed(“fastest”)

draw_tree(l, 4)

done()

显示效果:执行上述程序需要花费一定的时间,最后的效果如下

20200426120639485877.png

原文:https://www.cnblogs.com/Fairy-02-11/p/12778477.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/154091.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • type="button" ,"submit" 的区别(转)

    type="button" ,"submit" 的区别(转)

    2021年9月13日
    58
  • Java的CountDownLatch和CyclicBarrier的理解和区别

    Java的CountDownLatch和CyclicBarrier的理解和区别CountDownLatch和CyclicBarrier的功能看起来很相似,不易区分,有一种谜之的神秘。本文将通过通俗的例子并结合代码讲解两者的使用方法和区别。CountDownLatch和CyclicBarrier都是java.util.concurrent包下面的多线程工具类。从字面上理解,CountDown表示减法计数,Latch表示门闩的意思,计数为0的时候就可以打开门闩了。Cycli…

    2022年7月13日
    11
  • shell脚本export变量只限脚本内么_shell脚本调用oracle存储过程

    shell脚本export变量只限脚本内么_shell脚本调用oracle存储过程shell脚本中export命令未生效,原因详解问题:我有一个脚本,脚本中有如下一条语句exportfdu=“dufan”用sh运行脚本后,在当前shell利用命令env查看环境变量,但是却没有fdu变量,难道是因为我的export语句没有生效?解决结果:脚本中的export一定是生效的利用source执行脚本,在当前shell即可查看到fdu环境变量。这个问题涉及了三个知识点:变量(环境变量、自定义变量)父进程与子进程脚本的执行方式什么是变量?变量的分类?1.

    2022年9月6日
    1
  • pycharm设置快捷键_怎么使用F快捷键

    pycharm设置快捷键_怎么使用F快捷键全局搜索快捷键无反应原因:搜狗输入法占用的ctrl+shift+F快捷键,简繁切换的快捷键。在搜狗输入法中将此项取消。

    2022年8月29日
    2
  • Android中bindService的使用及Service生命周期

    Android中bindService的使用及Service生命周期Android中有两种主要方式使用Service,通过调用Context的startService方法或调用Context的bindService方法,本文只探讨纯bindService的使用,不涉及任何startService方法调用的情况。如果想了解startService相关的使用,请参见《Android中startService的使用及Service生命周期》。bindService启动服务

    2022年6月9日
    77
  • 测试用例设计的八大要素及ANSI/IEEE 829标准和编写示例[通俗易懂]

    测试用例设计的八大要素及ANSI/IEEE 829标准和编写示例[通俗易懂]1、测试用例的八大要素1.用例编号和其他编号一样,测试用例编号是用来唯一识别测试用例的编号,要求具有易识别和易维护性,用户可以很容易根据用例编号获取到相应用例的目的和作用,在系统测试用例中,编号的一般格式为A-B-C-D这几部分的作用分别如下:A:产品或项目类型,如CMS(内容管理系统)、CRM(客户关系管理系统)B:一般用来说明用例的属性,如ST(系统测试)、IT(集成测试)、UT(单元测试)C:测试需求的表示,说明该用例针对的需求点,可包括测试项和测试子项等,如文档管理、客户投诉信息管理

    2022年6月28日
    34

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号