likes
comments
collection
share

python画爱心代码「希望我们在这快餐时代里,都能遇到小火慢炖的粥~」

作者站长头像
站长
· 阅读数 23

导语:

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

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

正文:

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

Google programming!启动!

python画爱心代码「希望我们在这快餐时代里,都能遇到小火慢炖的粥~」

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

python画爱心代码「希望我们在这快餐时代里,都能遇到小火慢炖的粥~」

画出来也很好看:

python画爱心代码「希望我们在这快餐时代里,都能遇到小火慢炖的粥~」

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

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

python画爱心代码「希望我们在这快餐时代里,都能遇到小火慢炖的粥~」

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

python画爱心代码「希望我们在这快餐时代里,都能遇到小火慢炖的粥~」

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

python画爱心代码「希望我们在这快餐时代里,都能遇到小火慢炖的粥~」

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画爱心代码「希望我们在这快餐时代里,都能遇到小火慢炖的粥~」

结尾:

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

需要完整的项目源码或者有什么不清楚的地方,欢迎截图私信我,要么点击这行蓝色字体!

转载自:https://juejin.cn/post/7062914433860763679
评论
请登录