本文转载自微信公众号「快学Python」,作者快快。转载本文请联系快学Python公众号。
每到各种节日,不少小伙伴们都会遇到这样一个世纪问题——怎么给女朋友/老婆一个与众不同的节日惊喜。
这不马上就又要到520了嘛,我们可以尝试用python给女朋友比心表白!就像下面这这样??
下面快快就带大家来领略一下用Python表白的方式,让女朋友们感受一下IT人的浪漫。
Turtle基本参数
python的强大在于它有许多的强大的库,turtle是其中可以交互式的绘画的模块。也是很多提升初学者学习python乐趣的秘密法宝!
作为一个艺术白痴,想要画一幅画可能很困难,但是利用python的turtle库,只需要几行代码你就能实现绘画[1]。
turtle是python自带的一个库,直接调用就可以了。
- from turtle import *
然后接下来我们需要了解一下turtle的基本语句,为画图打好基础。
现在,我们尝试用上表中的命令来操作一下,看看turtle是怎么运动的。
- from turtle import *
-
- forward(200) # 从当前画笔方向移动200
- left(90) # 逆时针移动90°
- backward(200) # 在当前画笔方向的反方向移动200
- right(90) # 顺时针移动90°
- circle(200) # 画一个半径为200的圆,圆心在画笔左边
运行后效果如下
可以看到,画笔按照我们的设想运动了起来。下面我们开始尝试自己简单模仿来画图啦
海龟画图
不过为了节省工作量,我们可以创建一些函数,这样就不用把很多基本代码写很多遍了。
- def heart(x, y, size):
- go_to(x, y)
- left(150)
- begin_fill()
- forward(51*size)
- ring(150,size,0.3,'right')
- ring(210,size,0.786,'right')
- left(120)
- ring(210,size,0.786,'right')
- ring(150,size,0.3,'right')
- forward(51*size)
- end_fill()
比如,上面的代码就是构建了绘制心形的函数,单独测试一下效果。
成功画了一个心形,并填充了颜色。
剩下的我们就可以利用直线与曲线来依次绘制小人的头部、手臂和身体等。
- #头部
- color('black')
- go_to(-228, 72)
- pensize(3)
- left(150)
- ring(350,1,0.8,'right')
-
- #手臂
- left(150)
- forward(70)
- left(90)
- forward(10)
- ring(200,0.1,0.9,'right')
- forward(10)
- left(90)
- forward(20)
- ring(200,0.1,0.9,'right')
- forward(10)
- left(90)
- ring(200,0.2,0.9,'right')
- left(100)
- left
- forward(80)
当然,除了添加心形,还可以添加一些文字。如果大家想自定义文字,直接更改参数中的文字520就好。
- # 添加文字
- go_to(-39, 69)
- write("520", align="left", font=("黑体", 30, "normal"))
最终成果如下图所示??