python 详解turtle画爱心代码


Posted in Python onFebruary 15, 2022

导语:

哈喽,在经历了过年相亲这一环节,成了是好事?,不成也是多认识一个人,见见"世面",也可以“开拓”一下眼界,说不定遇到什么奇葩,以后跟朋友也有了茶余饭后的话题。

希望我们在这快餐时代里,都能遇到小火慢炖的粥~

正文:

一直觉得turtle是个非常可爱的库,突发奇想,然后想试试传说中的土味表白:用python画一颗小爱心——

Google programming!启动!

python 详解turtle画爱心代码

确实有很多很多现成的代码,比如[1]:

python 详解turtle画爱心代码

画出来也很好看:

python 详解turtle画爱心代码

但左看右看,觉得背后的逻辑,比如forward( )的参数、right( )的参数怎么来的不是很直白,于是用最简单的思路再推了一下:

第一步,考虑从“心尖”的位置开始,先向左上角画一条直线,与y轴的夹角设为45度:

python 详解turtle画爱心代码

第二步,心形的上方是一个弧形,可以设计成从原先的斜率开始,每前进1单位转1单位角度,画一个半圆:

python 详解turtle画爱心代码

第三步,右侧基本重复,但调整一下旋转角度,相应的各个参数的关系也很容易推:

python 详解turtle画爱心代码

OK顺着这个思路,非常简单的代码如下:

import turtle
# set a window
wn = turtle.Screen()
wn.bgcolor("black")
wn.screensize(800, 600)
 
 
# set a pen
pen = turtle.Turtle()
pen.color("pink")
pen.shape("turtle")
 
#画笔形状设成了非常可爱的海龟hh
pen.fillcolor("pink")
turtle.speed(10)
 
 
# define functions
def curve():
   for i in range(180):
       pen.right(1)
       pen.forward(2)
def heart():
   pen.left(135)
   pen.forward(720/3.14)
   curve()
   pen.left(90)
   curve()
   pen.forward(720/3.14)
def text():
   pen.penup()
   pen.setpos(-50,50)
   pen.pendown()
   pen.color("white")
   pen.write(input("enter the words:"), font = ("Verdana", 30, "bold"))
 
 
# painting!
pen.begin_fill()
pen.penup()
pen.setpos(0,-150)
pen.pendown()
heart()
pen.end_fill()
text()
turtle.done()

效果!

python 详解turtle画爱心代码

结尾:

今天的分享就到这里,喜欢就点个赞吧!

python 详解turtle画爱心代码

到此这篇关于python 详解turtle画爱心代码的文章就介绍到这了,更多相关python 画爱心 内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python写的一个简单DNS服务器实例
Jun 04 Python
python私有属性和方法实例分析
Jan 15 Python
小议Python中自定义函数的可变参数的使用及注意点
Jun 21 Python
Python 网页解析HTMLParse的实例详解
Aug 10 Python
pandas的to_datetime时间转换使用及学习心得
Aug 11 Python
Python动态导入模块:__import__、importlib、动态导入的使用场景实例分析
Mar 30 Python
python3中的logging记录日志实现过程及封装成类的操作
May 12 Python
pytorch 计算ConvTranspose1d输出特征大小方式
Jun 23 Python
PyCharm2020.1.1与Python3.7.7的安装教程图文详解
Aug 07 Python
python中Array和DataFrame相互转换的实例讲解
Feb 03 Python
使用Selenium实现微博爬虫(预登录、展开全文、翻页)
Apr 13 Python
python中 .npy文件的读写操作实例
Apr 14 Python
python分分钟绘制精美地图海报
基于PyQT5制作一个桌面摸鱼工具
Feb 15 #Python
python接口测试返回数据为字典取值方式
Feb 12 #Python
Python socket如何解析HTTP请求内容
Feb 12 #Python
python全面解析接口返回数据
Feb 12 #Python
http通过StreamingHttpResponse完成连续的数据传输长链接方式
Feb 12 #Python
python中出现invalid syntax报错的几种原因分析
Feb 12 #Python
You might like
PHP Google的translate API代码
2008/12/10 PHP
php接口和抽象类使用示例详解
2014/03/02 PHP
php+mysqli实现批量替换数据库表前缀的方法
2014/12/29 PHP
PHP实现图片上传并压缩
2015/12/22 PHP
PHP实现可精确验证身份证号码的工具类示例
2018/05/31 PHP
javascript新手语法小结
2008/06/15 Javascript
javaScript 简单验证代码(用户名,密码,邮箱)
2009/09/28 Javascript
node.js中的console.log方法使用说明
2014/12/09 Javascript
jQuery浏览器CSS3特写兼容实例
2015/01/19 Javascript
jQuery日期范围选择器附源码下载
2017/05/23 jQuery
vue 自定义组件 v-model双向绑定、 父子组件同步通信的多种写法
2017/11/27 Javascript
使用vue-cli打包过程中的步骤以及问题的解决
2018/05/08 Javascript
详解微信小程序的 request 封装示例
2018/08/21 Javascript
vue 中滚动条始终定位在底部的方法
2018/09/03 Javascript
vue 配置多页面应用的示例代码
2018/10/22 Javascript
nodejs微信开发之自动回复的实现
2019/03/17 NodeJs
IE11下处理Promise及Vue的单项数据流问题
2019/07/24 Javascript
JS实现简易留言板增删功能
2020/02/08 Javascript
vue.js watch经常失效的场景与解决方案
2021/01/07 Vue.js
python回溯法实现数组全排列输出实例分析
2015/03/17 Python
Python3遍历目录树实现方法
2015/05/22 Python
python批量读取txt文件为DataFrame的方法
2018/04/03 Python
Win10下python3.5和python2.7环境变量配置教程
2018/09/18 Python
使用python根据端口号关闭进程的方法
2018/11/06 Python
python模糊图片过滤的方法
2018/12/14 Python
实时获取Python的print输出流方法
2019/01/07 Python
python tkinter canvas 显示图片的示例
2019/06/13 Python
利用pandas合并多个excel的方法示例
2019/10/10 Python
Sneaker Studio法国:购买运动鞋
2018/06/08 全球购物
Skyscanner加拿大:全球旅行搜索平台
2018/11/19 全球购物
美国最值得信赖的宠物药房:Allivet
2019/03/23 全球购物
杭州信雅达系统.NET工程师面试试题
2015/02/08 面试题
基层党组织公开承诺书
2014/03/28 职场文书
巾帼文明岗申报材料
2014/05/01 职场文书
2014乡镇干部纪律作风整顿思想汇报
2014/09/13 职场文书
银行反四风对照检查材料
2014/09/29 职场文书