python 详解turtle画爱心代码

 更新时间:2022年02月15日 15:08:03   作者:迢迢x  
这篇文章主要介绍了python画爱心的过程。文中的示例代码讲解详细,对我们学习Python有一定的价值,需要的可以参考一下

导语:

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

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

正文:

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

Google programming!启动!

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

画出来也很好看:

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

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

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

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

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 画爱心 内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python对常见数据类型的遍历解析

    python对常见数据类型的遍历解析

    这篇文章主要介绍了python对常见数据类型的遍历解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08
  • Python错误: SyntaxError: Non-ASCII character解决办法

    Python错误: SyntaxError: Non-ASCII character解决办法

    这篇文章主要介绍了Python错误: SyntaxError: Non-ASCII character解决办法的相关资料,需要的朋友可以参考下
    2017-06-06
  • Pycharm小白级简单使用教程

    Pycharm小白级简单使用教程

    pycharm是一种Python IDE,能够帮助我们在编写代码时提高效率。 这篇文章主要介绍了Pycharm小白级简单使用教程,需要的朋友可以参考下
    2020-01-01
  • Flask web开发处理POST请求实现(登录案例)

    Flask web开发处理POST请求实现(登录案例)

    这篇文章主要介绍了Flask web开发处理POST请求实现(登录案例),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-07-07
  • pd.drop_duplicates删除重复行的方法实现

    pd.drop_duplicates删除重复行的方法实现

    drop_duplicates 方法实现对数据框 DataFrame 去除特定列的重复行,本文主要介绍了pd.drop_duplicates删除重复行的方法实现,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-06-06
  • scrapy爬虫部署服务器的方法步骤

    scrapy爬虫部署服务器的方法步骤

    本文主要介绍了scrapy爬虫部署服务器的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-06-06
  • Python利用psutil获取CPU与内存等硬件信息

    Python利用psutil获取CPU与内存等硬件信息

    psutil是Python的一个第三方库,提供了各种强大的硬件信息查阅功能,这篇文章主要为大家介绍了如何利用psutil获取CPU与内存等硬件信息,需要的可以参考一下
    2023-07-07
  • Pandas.DataFrame重置列的行名实现(set_index)

    Pandas.DataFrame重置列的行名实现(set_index)

    本文主要介绍了Pandas.DataFrame重置列的行名实现(set_index),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-02-02
  • Python中实现字符串类型与字典类型相互转换的方法

    Python中实现字符串类型与字典类型相互转换的方法

    这篇文章主要介绍了Python中实现字符串类型与字典类型相互转换的方法,非常实用,需要的朋友可以参考下
    2014-08-08
  • Python使用Paramiko模块编写脚本进行远程服务器操作

    Python使用Paramiko模块编写脚本进行远程服务器操作

    这篇文章主要介绍了Python使用Paramiko模块编写脚本进行远程服务器操作的实例,通过Paramiko能够方便地使用SSH服务,需要的朋友可以参考下
    2016-05-05

最新评论