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编写提取日志中的中文的脚本的方法
Apr 30 Python
Python实现新浪博客备份的方法
Apr 27 Python
Python中文分词工具之结巴分词用法实例总结【经典案例】
Apr 15 Python
scrapy spider的几种爬取方式实例代码
Jan 25 Python
python对日志进行处理的实例代码
Oct 06 Python
详解将Python程序(.py)转换为Windows可执行文件(.exe)
Jul 19 Python
selenium+Chrome滑动验证码破解二(某某网站)
Dec 17 Python
tensorflow自定义激活函数实例
Feb 04 Python
Python3安装模块报错Microsoft Visual C++ 14.0 is required的解决方法
Jul 28 Python
工程师必须了解的LRU缓存淘汰算法以及python实现过程
Oct 15 Python
pytorch中的 .view()函数的用法介绍
Mar 17 Python
Python实现数据的序列化操作详解
Jul 07 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
乱谈我对耳机、音箱的感受
2021/03/02 无线电
解析PHP中一些可能会被忽略的问题
2013/06/21 PHP
php命令行使用方法和命令行参数说明
2014/04/08 PHP
CentOS下与Apache连接的PHP多版本共存方案实现详解
2015/12/19 PHP
laravel实现简单用户权限的示例代码
2019/05/28 PHP
JavaScript使用DeviceOne开发实战(一) 配置和起步
2015/12/01 Javascript
jQuery实现手机自定义弹出输入框
2016/06/13 Javascript
AngularJS基础 ng-include 指令示例讲解
2016/08/01 Javascript
js导出excel文件的简洁方法(推荐)
2016/11/02 Javascript
详解微信开发中snsapi_base和snsapi_userinfo及静默授权的实现
2017/03/11 Javascript
JS字符串统计操作示例【遍历,截取,输出,计算】
2017/03/27 Javascript
ES6中的rest参数与扩展运算符详解
2017/07/18 Javascript
关于vuejs中v-if和v-show的区别及v-show不起作用问题
2018/03/26 Javascript
vue简单练习 桌面时钟的实现代码实例
2019/09/19 Javascript
laravel实现中文和英语互相切换的例子
2019/09/30 Javascript
Weex开发之地图篇的具体使用
2019/10/16 Javascript
vue路由传参三种基本方式详解
2019/12/09 Javascript
通过js实现压缩图片上传功能
2020/02/25 Javascript
vuex管理状态仓库使用详解
2020/07/29 Javascript
python查找指定具有相同内容文件的方法
2015/06/28 Python
python监控linux内存并写入mongodb(推荐)
2017/09/11 Python
详解Python 实现元胞自动机中的生命游戏(Game of life)
2018/01/27 Python
《与孩子一起学编程》python自测题
2018/05/27 Python
Python基于scipy实现信号滤波功能
2019/05/08 Python
Python中使用双下划线防止类属性被覆盖问题
2019/06/27 Python
Python flask框架post接口调用示例
2019/07/03 Python
Python tkinter实现图片标注功能(完整代码)
2019/12/08 Python
pytorch自定义二值化网络层方式
2020/01/07 Python
音频处理 windows10下python三方库librosa安装教程
2020/06/20 Python
利用Bootstrap实现漂亮简洁的CSS3价格表实例源码
2017/03/02 HTML / CSS
Lookfantastic意大利官网:英国知名美妆购物网站
2019/05/31 全球购物
大学生职业规划前言模板
2013/12/27 职场文书
物流创业计划书
2014/02/01 职场文书
学生评语大全
2014/04/18 职场文书
大学毕业生管理学求职信
2014/09/01 职场文书
拿破仑传读书笔记
2015/07/01 职场文书