百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 编程字典 > 正文

Python每日一学:走进海龟绘图世界,探索编程与艺术的跨界融合

toyiye 2024-08-17 23:48 9 浏览 0 评论

亲爱的编程爱好者和学习者们,今天在我们的“Python每日一学”栏目中,让我们一起解锁一个有趣又富有教育意义的模块——Turtle(海龟绘图)。它不仅能够帮助初学者轻松入门编程逻辑,还能激发无限创意,让编程与艺术碰撞出美丽的火花。

Turtle图形模块源于Logo编程语言的理念,通过模拟一只海龟在二维平面上移动并绘制线条,形象生动地展示了程序设计中的序列、循环和条件语句等基础概念。在Python的世界里,这只虚拟的海龟同样可以按照指令翩翩起舞,在屏幕上留下缤纷多彩的图案。

(1)启动海龟环境

首先在使用海龟画图之前一定要启动海龟环境

from turtle import *

(2)认识海龟坐标系

1、turtle的绘图窗体(界面)

setup(),设置窗体大小及位置,语法格式是:

turtle.setup(width,height,startx,starty)


其中,width和height是窗体的宽度和高度,后两个为可选参数,是窗体离屏幕左上角的水平和纵向的距离,如果忽略不写,则在屏幕正中间

注意:setup()非必须,不设置的话就采用默认值即可


1、turtle的绘图窗体(界面)

绝对坐标(以图中心也就是小乌龟原始点为(0,0))

goto(-100,100)#小乌龟头朝右,goto(-100,100),到了这个点依然头朝右

海龟行走常用的函数

from turtle import *
fd(100)#像海龟的正前方方向行走100
bk(200)#向海龟的反方向运行200
circle(200,30)#以海龟的当前位置左侧的半径为r的一个点为圆心,进行曲线运行
seth(45)#改变海龟行进方向,seth()只改变方向不前进,括号里的数值为如同的绝对角度

执行过程是如下图所示:

海龟角度的转向语法:

turtle.left(angle) turtle.right(angle)

参考代码:

from turtle import *
left(30)
right(30)

2、海龟画笔的颜色设定

先认识几个常见的颜色值,如表格所示

英文名称

RGB整数值

RGB小数值

中文名称

white

255,255,255

1,1,1

白色

yellow

255,255,0

1,1,0

黄色

magenta

255,0,255

1,0,1

洋红

cyan

0,255,255

0,1,1

青色

blue

0,0,255

0,0,1

蓝色

black

0,0,0

0,0,0

黑色

seashell

255,245,238

1,0.96,0.93

海贝色

gold

255,215,0

1,0.84,0

金色

pink

255,192,203

1,0.84,0

粉红色

brown

165,42,42

0.65,0.16,0.16

棕色

pruple

160,32,240

0.63,0.13,0.94

紫色

tomato

255,99,71

1,0.39,0.28

番茄色

海龟画笔颜色方法,先设定色彩的数值,再设定画笔的颜色:

turtle.colormode(mode)改变色彩数值的使用。默认采用小数值,可切换整数值

1.0:RGB小数值模式

255:RGB整数值模式

例如,将画笔颜色设置为洋红

from turtle import *
colormode(255)#设定颜色值为整数值,忽略则为小数值
color(255,0,255)#设定画笔颜色
fd(100)#像海龟的正前方方向行走100
bk(200)#向海龟的反方向运行200
circle(200,30)#以海龟的当前位置左侧的半径为r的一个点为圆心,进行曲线运行
seth(45)

执行结果是:


(3)turtle常见的方法

  • 移动和绘制

forward() | fd() 前进

backward() | bk() | back() 后退

right() | rt() 右转

left() | lt() 左转

goto() | setpos() | setposition() 前往/定位

setx() 设置x坐标

sety() 设置y坐标

setheading() | seth() 设置朝向

home() 返回原点

circle() 画圆

dot() 画点

stamp() 印章

clearstamp() 清除印章

clearstamps() 清除多个印章

undo() 撤消

speed() 速度

  • 获取海龟的状态

position() | pos() 位置

towards() 目标方向

xcor() x坐标

ycor() y坐标

heading() 朝向

distance() 距离

  • 设置与度量单位

degrees() 角度

radians() 弧度

  • 绘图状态

pendown() | pd() | down() 画笔落下

penup() | pu() | up() 画笔抬起

pensize() | width() 画笔粗细

pen() 画笔

isdown() 画笔是否落下

  • 颜色控制

color() 颜色

pencolor() 画笔颜色

fillcolor() 填充颜色

  • 填充

filling() 是否填充

begin_fill() 开始填充

end_fill() 结束填充

  • 更多绘图控制

reset() 重置

clear() 清空

write() 书写

  • 海龟可见性

showturtle() | st() 显示海龟

hideturtle() | ht() 隐藏海龟

isvisible() 是否可见


4、案例:用海龟画趣味图形

from turtle import *
setup(480,360)
m=20#重复个数
n=5#画几边形
color=['red','green','gold','brown','blue']
for i in range(1,m+1):
    left(360/m)
    for j in range(1,n+1):
        pencolor(color[j%n])
        fd(100)
        left(360/n)

运行结果:

今日的Python学习之旅,就让我们暂驻脚步,在这个简明而饶有趣味的海龟绘图实例中收获喜悦与启示。虽然我们只是触及了海龟模块的冰山一角,但已足以点燃对编程美学的热情。在未来的篇章中,我们将继续深化对Turtle的理解,携手绘制更为丰富多姿的图形画卷,进一步发掘Python编程在视觉艺术创造上的无限可能。

回顾今日的学习,不禁让人思考:在诸位的编程探险历程中,是否曾有过驾驭Python的海龟绘图,将其化为手中画笔,挥洒出独一无二的视觉艺术之作的经历呢?同时,对于这种直观易懂的可视化编程方式,您觉得它应当如何巧妙地嵌入现代教学场景,以何种方式助力培养学生们跃动的创新思维和严谨的逻辑架构能力呢?

在此诚挚邀请广大读者朋友积极发表见解与心得,共同在评论区展开一场关于如何借力Python海龟绘图工具提升编程学习互动性与趣味性的大讨论。期待您分享宝贵的经验故事,以及更多利用Python Turtle创作出的精美作品,共同见证编程与艺术交融的魅力所在!

相关推荐

# Python 3 # Python 3字典Dictionary(1)

Python3字典字典是另一种可变容器模型,且可存储任意类型对象。字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中,格式如...

Python第八课:数据类型中的字典及其函数与方法

Python3字典字典是另一种可变容器模型,且可存储任意类型对象。字典的每个键值...

Python中字典详解(python 中字典)

字典是Python中使用键进行索引的重要数据结构。它们是无序的项序列(键值对),这意味着顺序不被保留。键是不可变的。与列表一样,字典的值可以保存异构数据,即整数、浮点、字符串、NaN、布尔值、列表、数...

Python3.9又更新了:dict内置新功能,正式版十月见面

机器之心报道参与:一鸣、JaminPython3.8的热乎劲还没过去,Python就又双叒叕要更新了。近日,3.9版本的第四个alpha版已经开源。从文档中,我们可以看到官方透露的对dic...

Python3 基本数据类型详解(python三种基本数据类型)

文章来源:加米谷大数据Python中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。在Python中,变量就是变量,它没有类型,我们所说的"类型"是变...

一文掌握Python的字典(python字典用法大全)

字典是Python中最强大、最灵活的内置数据结构之一。它们允许存储键值对,从而实现高效的数据检索、操作和组织。本文深入探讨了字典,涵盖了它们的创建、操作和高级用法,以帮助中级Python开发...

超级完整|Python字典详解(python字典的方法或操作)

一、字典概述01字典的格式Python字典是一种可变容器模型,且可存储任意类型对象,如字符串、数字、元组等其他容器模型。字典的每个键值key=>value对用冒号:分割,每个对之间用逗号,...

Python3.9版本新特性:字典合并操作的详细解读

处于测试阶段的Python3.9版本中有一个新特性:我们在使用Python字典时,将能够编写出更可读、更紧凑的代码啦!Python版本你现在使用哪种版本的Python?3.7分?3.5分?还是2.7...

python 自学,字典3(一些例子)(python字典有哪些基本操作)

例子11;如何批量复制字典里的内容2;如何批量修改字典的内容3;如何批量修改字典里某些指定的内容...

Python3.9中的字典合并和更新,几乎影响了所有Python程序员

全文共2837字,预计学习时长9分钟Python3.9正在积极开发,并计划于今年10月发布。2月26日,开发团队发布了alpha4版本。该版本引入了新的合并(|)和更新(|=)运算符,这个新特性几乎...

Python3大字典:《Python3自学速查手册.pdf》限时下载中

最近有人会想了,2022了,想学Python晚不晚,学习python有前途吗?IT行业行业薪资高,发展前景好,是很多求职群里严重的香饽饽,而要进入这个高薪行业,也不是那么轻而易举的,拿信工专业的大学生...

python学习——字典(python字典基本操作)

字典Python的字典数据类型是基于hash散列算法实现的,采用键值对(key:value)的形式,根据key的值计算value的地址,具有非常快的查取和插入速度。但它是无序的,包含的元素个数不限,值...

324页清华教授撰写【Python 3 菜鸟查询手册】火了,小白入门字典

如何入门学习python...

Python3.9中的字典合并和更新,了解一下

全文共2837字,预计学习时长9分钟Python3.9正在积极开发,并计划于今年10月发布。2月26日,开发团队发布了alpha4版本。该版本引入了新的合并(|)和更新(|=)运算符,这个新特性几乎...

python3基础之字典(python中字典的基本操作)

字典和列表一样,也是python内置的一种数据结构。字典的结构如下图:列表用中括号[]把元素包起来,而字典是用大括号{}把元素包起来,只不过字典的每一个元素都包含键和值两部分。键和值是一一对应的...

取消回复欢迎 发表评论:

请填写验证码