520到了,用Python给女朋友比心表白

本文介绍如何利用Python的turtle库创造一个富有创意的节日惊喜,通过编程代码绘制心形并添加个性化文字,展示IT人的浪漫。
部署运行你感兴趣的模型镜像

每到各种节日,不少小伙伴们都会遇到这样一个世纪问题——怎么给女朋友/老婆一个与众不同的节日惊喜。

这不又要到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"))

最终成果如下图所示????

参考资料

[1]

DC学习助手: 只要十分钟,python绘图神器turtle了解一下?

---------End---------

 后台回复「微信群」,将邀请加入读者交流群。

《Python知识手册》《Markdown速查表》|《Python时间使用指南》|《Python字符串速查表》|《SQL经典50题》|《Python可视化指南》|《Plotly可视化指南》|《Pandas使用指南》|《机器学习精选》

????分享、点赞、在看,给个三连击呗!???? 

您可能感兴趣的与本文相关的镜像

Python3.11

Python3.11

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值