Python||用Python学画小猪佩奇的方法你确定不学?
写在前面:昨天反复修改格式,本来已经发出去了,后有好兄弟私戳我有点小问题,不过我也因此发现现在已经发出去的文章是可以修改的,虽然仅限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...慢慢来吧!
如果你还没不知道这个公众号为啥出现,欢迎去看上一篇文章。
相关文章
- 火山引擎在行为分析场景下的 ClickHouse JOIN 优化
- 用Python爬取了某宝1166家月饼数据进行可视化分析,终于找到最好吃的月饼~
- 在 Linux 上试试这个基于 Python 的文件管理器
- Python列表解析式到底该怎么用?
- 如何快速把你的 Python 代码变为 API
- 十个Python初学者常犯的错误
- 手把手使用 Python 删除 Windows 下的长路径文件
- 九个应知应会的单行Python代码
- 一文详尽 Python 函数式编程技术
- Python 获取旅游景点信息及评论并作词云、数据可视化
- 刷完三个Java教程后不再犹豫
- Python进行数据可视化,你会用什么库来做呢?
- Vue3 $emit指南--包含选项API、组合API以及 setup 语法糖
- 使用Java和Python进行数据统计和分析
- 当Python也来进行修图神器,发现是真的蛮好用的呢!!
- 为什么很多人宁可用 Excel 也不用 Python?丨T群话
- 高考结束,用 Python 来分析下哪里的高考是地狱级难度
- 什么是双因素验证 2FA,如何用 Python 实现?
- 十行 Python 代码能实现哪些有趣功能?
- 聊聊Python中常见魔法方法