Python画画turtle库初级、中级、高级详解

简介: 当开始准备的时候,突然明白了为什么当初我第一次在mooc上学习Python的时候,那大学教授用画画来教我~


当开始准备的时候,突然明白了为什么当初我第一次在mooc上学习Python的时候,那大学教授用画画来教我~

那时不懂,想着大家都是成年了,为什么还要用着这么“幼稚”的案例来学习

后来逐渐了解,针对万物皆对象的Python,深入学习一个包能够很容易将Python的各种语法串联在一起,然后再去扩展各种技术池

所以,本篇文章将turtle给完全整明白出来,学完了turtle也就学完了Python的基础~

1turtle库的使用

很多人遇到新问题喜欢去查百度,其实比百度更权威的就是Python的官方文档

无论从解释还是例子都要更加完整,而且还能从宏观的角度把握所有的基本语法,即使不能够全部记住

遇到问题的时候,总能想最优的解法,具体怎么用去查一下就知道了额

**Python官方文档地址:**https://docs.python.org/zh-cn/3/library/

例如turtle,一行将它的所有方法做成思维导图,遇到什么需求直接看导图就能找到对应的方法,然后具体使用再crtl+左键查看源码,或者查看文档

即使库方法太多记不住也没关系了,需要的时候打开查找即可,用多了自然就记住了image.pngimage.png

2初级绘画

当了解turtle库主要的方法之后,就可以写程序调用库的各种方法来运行,例如画线、画圆、画各种多边形

而且绘画的即时正反馈比图文反馈更加具有冲击力

在这个过程中能够学习掌握注释、变量、字符串、数字、列表、循环、函数等基础语法的使用,可以说学完turtle就可以学会Python基础+Python绘图了~

例如下图就是利用这些语法简单的绘制出一个“滑稽”表情包~1123.gif

3中级绘画

在日常学习的过程中,会的越多不会的也就越多,当然学习Python也是

学完基础语法,肯定不满足画各种简单图形,便想着画一些更复杂的图形,例如动漫人物等等

当实力却不允许的时候,只能一点点抠细节,计算坐标,反复测量调试长度、角度、颜色等等

这个抠细节的过程中会反复使用这些基本语法,同时也会扩展这些语法的使用技巧,

例如下图就是反复抠细节的绘制出一个哆啦A梦头像~1124.gif

4高级绘画

当参考图的细节数量以指数上升,这时抠细节就算抠烂脚趾都不一定抠出来

例如想用Python绘制下面这张图,那只能学习更多的Python方法来实现image.png

可以使用opencv提取轮廓或者读取傅里叶级数信息来得到轮廓数据,然后将轮廓数据转换成二维坐标,最后用turtle依次走过这些坐标达到绘图的效果

例如下图就是读取傅里叶级数信息的绘制出的一个头像,1121.gif

5最后

对于“万物皆对象”的Python来说,入门最好的办法就是深入学习一个包,从一个包开始熟悉Python的各种语法

就像学习数据分析一样,即使什么都不太懂,先把matplotlib给学起来,画出不同的图表,才能不断的进阶学习更多的Python技能树

好了,我是一行,我们下期见~



相关文章
|
5天前
|
SQL 关系型数据库 MySQL
MySQL操作利器——mysql-connector-python库详解
MySQL操作利器——mysql-connector-python库详解
26 0
|
5天前
|
机器学习/深度学习 数据处理 Python
从NumPy到Pandas:轻松转换Python数值库与数据处理利器
从NumPy到Pandas:轻松转换Python数值库与数据处理利器
16 0
|
3天前
|
数据挖掘 Python
【Python】应用:pyproj地理计算库应用
这篇博客介绍了 `pyproj` 地理计算库的应用,涵盖地理坐标系统转换与地图投影。通过示例代码展示了如何进行经纬度与UTM坐标的互转,并利用 `pyproj.Geod` 计算两点间的距离及方位角,助力地理数据分析。 安装 `pyproj`:`pip install pyproj`。更多内容欢迎关注本博客,一起学习进步! Pancake 🍰 不迷路。😉*★,°*:.☆( ̄▽ ̄)/$:*.°★* 😏
|
5天前
|
Linux Android开发 iOS开发
开源的Python库,用于开发多点触控应用程序
Kivy是一款开源Python库,专为开发多点触控应用设计,支持Android、iOS、Linux、OS X和Windows等平台。本文将指导你使用Kivy创建“Hello World”应用并打包成Android APK。首先通过`pip install kivy`安装Kivy,然后创建并运行一个简单的Python脚本。接着,安装Buildozer并通过`buildozer init`生成配置文件,修改相关设置后,运行`buildozer -v android debug`命令打包应用。完成构建后,你将在`./bin/`目录下找到类似`your-app-debug.apk`的文件。
12 2
|
4天前
|
数据挖掘 API 数据处理
Python 数据分析及预处理常用库
Python自身数据分析功能有限,需借助第三方库增强。常用库包括NumPy、pandas、Matplotlib等。NumPy由Numeric发展而来,提供了多维数组对象及各种API,支持高效的数据处理,如数学、逻辑运算等,常作为其他高级库如pandas和Matplotlib的依赖库。其内置函数处理速度极快,建议优先使用以提升程序效率。
7 0
|
5天前
|
UED Python
Python requests库下载文件时展示进度条的实现方法
以上就是使用Python `requests`库下载文件时展示进度条的一种实现方法,它不仅简洁易懂,而且在实际应用中非常实用。
10 0
|
5天前
|
机器学习/深度学习 人工智能 数据可视化
# Python的一个非常cool的库Gradio
# Python的一个非常cool的库Gradio
16 0
|
5天前
|
监控 网络协议 数据库连接
Python3 监控端口:使用 socket 库
Python3 监控端口:使用 socket 库
15 0
|
5天前
|
数据挖掘 Python
​Python神奇之旅:探索NumPy库的力量
​Python神奇之旅:探索NumPy库的力量
12 0
|
5天前
|
Python
python一键导出/导入pip库
python一键导出/导入pip库
下一篇
无影云桌面