zl程序教程

您现在的位置是:首页 >  Python

当前栏目

Python||用Python学画小猪佩奇的方法你确定不学?

2023-02-26 10:16:31 时间

写在前面:昨天反复修改格式,本来已经发出去了,后有好兄弟私戳我有点小问题,不过我也因此发现现在已经发出去的文章是可以修改的,虽然仅限20字,最气的是出错的地方多了三个“turtle.”,好巧不巧刚好21个字。

最近忙活实验,死磕做不出东西,打算换一种思路,又要刷很多文献;

前段时间温故了一下之前没学完的Python,顺便写了一篇Turtle库入门级使用方法,感觉排版有点点乱,但是东西确实很基础,如果感兴趣也可以直接戳我聊。

Turtle(海龟)库:海龟绘图体系,是Python的标准库之一。

Python计算生态=标准库+第三方库(需要经过安装才能使用的功能模块)

1. turtle绘图窗体布局

最小单位为像素,其中显示器左上角为坐标原点;

用turtle.setup(width,height,startx,starty) 来设置启动窗体的位置和大小(默认处在显示器中央),其中后面两个参数不是必须的。

如turtle.setup(800,400,0,0) 可以得到出现在显示器左上角的宽为800像素,高为400像素的窗体。

2. turtle空间坐标体系

  • 2.1绝对坐标

海龟的朝向向右,即为X轴。

使用turtle.goto(x,y)可以使海龟前往从现位置前往坐标位置(x,y)

  • 2.2海龟坐标

从海龟自身的运动看起。

turtle.circle(r,angle)以海龟当前位置左侧某点为圆心,以r为半径,angle为角度进行曲线运行。

turtle.bk(d)向正后方运动d像素。

turtle.fd(d)向正前方运动d像素。

3. turtle角度坐标体系

  • 3.1绝对角度 turtle.seth(angle) 改变海龟前进方向,但不运动,其中angle为绝对度数。
  • 3.2海龟角度

turtle.left(angle)改变海龟的方向向左

turtle.right(angle)改变海龟的方向向右

4. RGB色彩体系

RGB即Red,Green,Blue红蓝绿三个通道的颜色组合,RGB每色取值范围为0- 255整数或0-1小数;需要注意的是,turtle库默认用小数表示颜色,采用turtle.colormode(255)切换为用整数表示,采用turtle.colormode(1.0) 切换回小数模式。

英文名称

整数值

小数值

中文名称

black

0,0,0

0,0,0

黑色

blue

0,0,255

0,0,1

蓝色

cyan

0,255,255

0,1,1

青色

yellow

255,255,0

1,1,0

黄色

magenta

255,0,255

1,0,1

洋红

white

255,255,255

1,1,1

白色

5.库引用

  • 5.1使用海龟库时,首先得库引用 import turtle 库引用即使用import来扩充Python程序功能的方式,常采用 import+库

使用时: import+库

库+函数名

举例 import turtle turtle.setup(800,400) turtle.fd(200) turtle.done()

  • 5.2 import其余用法(不推荐) from+库+import+函数 from+库+import*

使用以上方法进行库引用时,不需要使用库+函数名的方式使用

举例 from turtle import* setup(800,400) fd(200) done()

但使用此种方法时可能会出现函数重名的情况。

  • 5.3 import的究极好用用法(推荐) import+库+as+库别名

举例 import turtle as t t.setup(800,400) t.fd(200) t.done()

6.turtle画笔控制函数

命令

运行

turtle.penup()或turtle.pu()

画笔抬起,不在画布上形成图案

turtle.pendown()或turtle.pd()

画笔落下,在画布上形成图案

turtle.pensize()或turtle.width()

画笔宽度(海龟腰围)

turtle.pencolor(color)

画笔颜色(海龟皮肤)‍

turtle.speed()

设置画笔移动速度,画笔绘制的速度范围[0,10]整数,数字越大越快

turtle.fillcolor()

绘制图形的填充颜色

turtle.color(color1, color2)

同时设置pencolor=color1,fillcolor=color2

turtle.begin_fill()

准备开始填充图形

turtle.end_fill()

填充完成

画笔颜色括号中的color有三种模式

举例 颜色字符串 turtle.pencolor(“purple”)注意括号内必须为小写且为字符串 RGB小数值 turtle.pencolor(0.63,0.13,0.94) RGB元组值 turtle.pencolor((0.63,0.13,0.94))注意双括号

7.turtle运动控制函数

控制海龟运动:走直线或曲线

turtle.forward(d)别名turtle.fd(d) 向前行进d像素

turtle.circle(r,angle) 根据半径r绘制角度为angle的弧形,若angle=0,则绘制圆形。

默认情况下圆心在海龟的左侧距离r的位置,若半径为负数,则圆形在海龟的右侧。

8.turtle方向控制函数

控制海龟面对方向

绝对角度:turtle.setheading(angle)别名turtle.seth(angle)

海龟角度:turtle.left() & turtle.right()

9.turtle全局控制命令

turtle.reset() 清空窗口,重置为起始状态

练习

使用turtle库,绘制一个风轮效果,每个风轮内角为45度,风轮长150像素‪‪‪‪‪‫‫‪。

#WindWheel.py

import turtle as t

t.pensize(2)

for i in range(4):

t.seth(90*i)

t.fd(150)

t.right(90)

t.circle(-150,45)

t.goto(0,0)

‪当然,理论上使用turtle库能够画出各种各样的图形,比如说某粉红色电吹风。

源码:

https://blog.csdn.net/qq_40587575/article/details/80587172

Turtle库作为第一个重要的标准库,入门不难,但是想要利用好还得多练习。

时钟源码及更多turtle库学习:

https://blog.csdn.net/zengxiantao1994/article/details/76588580

就先写这么多啦,写到最后排版的时候被师兄看见,然后师兄说:“这是不是那个用海龟画图的东西,我们小学就学过。” ???? 怎么我的小学计算机课就是4399,7k7k,果然人与人之间的差距从小学就开始了

接下来可能会写Linux,打算先写一篇用Linux进行基因家族分析的方法,然后blast,RNAseq...慢慢来吧!

如果你还没不知道这个公众号为啥出现,欢迎去看上一篇文章。

日常||我为什么新开一个公众号?