一篇文章教你用python画动态爱心表白


Posted in Python onNovember 22, 2020

一篇文章教你用python画动态爱心表白

初级画心

学Python,感觉你们的都好复杂,那我来个简单的,我是直接把心形看作是一个正方形+两个半圆:

一篇文章教你用python画动态爱心表白

于是这就很简单了,十行代码解决:

import turtle as t
t.pensize(2)
# 笔大小2像素
t.pencolor("red")
# 颜色为红色
t.left(45)
# 45度
t.fd(200)
# 向前200直线
t.circle(100, 180)
# 画一圆半径100 弧度180
t.right(90)
# 向右90度
t.circle(100, 180)
# 再画一个圆半径100 弧度180
t.fd(200)
# 直线向前直线200
t.done()
# 绘制完成

一篇文章教你用python画动态爱心表白

一行代码画心

原代码

print('\n'.join([''.join([('Love'[(x-y) % len('Love')] if ((x*0.05)**2+(y*0.1)**2-1)**3-(x*0.05)**2*(y*0.1)**3 <= 0 else ' ') for x in range(-30, 30)]) for y in range(30, -30, -1)]))

一篇文章教你用python画动态爱心表白

拆解了一下这段长串的【一行代码】,得到如下的多行代码,实际运行效果一致,代码如下:

import time
words = input('请输出想要表达的文字:')
#例子:words = "Dear lili, Happy Valentine's Day! Lyon Will Always Love You Till The End! ♥ Forever! ♥"
for item in words.split():
 #要想实现打印出字符间的空格效果,此处添加:item = item+' '
 letterlist = []#letterlist是所有打印字符的总list,里面包含y条子列表list_X
 for y in range(12, -12, -1):
  list_X = []#list_X是X轴上的打印字符列表,里面装着一个String类的letters
  letters = ''#letters即为list_X内的字符串,实际是本行要打印的所有字符
  for x in range(-30, 30):#*是乘法,**是幂次方
   expression = ((x*0.05)**2+(y*0.1)**2-1)**3-(x*0.05)**2*(y*0.1)**3
   if expression <= 0:
    letters += item[(x-y) % len(item)]
   else:
    letters += ' '
  list_X.append(letters)
  letterlist += list_X
 print('\n'.join(letterlist))
 time.sleep(1.5);

但是,有点太单调了点,来,让我撸起袖子搞点事情,将代码简单改造一下,实现动态输出心形的一段话的效果:

改造以后,看上去不错了!效果如下:

代码如下,喜欢请点赞哦,谢谢❤️!:

import time
words = input('请输出想要表达的文字:')
for item in words.split():
  print('\n'.join([''.join([(item[(x-y) % len(item)] if ((x*0.05)**2+(y*0.1)**2-1)**3-(x*0.05)**2*(y*0.1)**3 <= 0 else ' ') for x in range(-30, 30)]) for y in range(12, -12, -1)]))
  time.sleep(1.5)

其实,像❤️ 这样类型的颜文字其实也是可以输出的,不过格式不是标准的心型,需要自行调节,大家可以自己尝试下^_^!

参考:Lyon https://zhuanlan.zhihu.com/p/33816013

总结

到此这篇关于教你用python画动态爱心表白的文章就介绍到这了,更多相关python画动态爱心表白内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python实现二维数组按照某行或列排序的方法【numpy lexsort】
Sep 22 Python
Python 通过调用接口获取公交信息的实例
Dec 17 Python
详解python做UI界面的方法
Feb 27 Python
python从入门到精通 windows安装python图文教程
May 18 Python
Django如何简单快速实现PUT、DELETE方法
Jul 24 Python
pytorch 实现模型不同层设置不同的学习率方式
Jan 06 Python
Python定义一个函数的方法
Jun 15 Python
Python self用法详解
Nov 28 Python
python中count函数知识点浅析
Dec 17 Python
使用豆瓣源来安装python中的第三方库方法
Jan 26 Python
python抢购软件/插件/脚本附完整源码
Mar 04 Python
python 实现德洛内三角剖分的操作
Apr 22 Python
python中scrapy处理项目数据的实例分析
Nov 22 #Python
python eventlet绿化和patch原理
Nov 21 #Python
python 实用工具状态机transitions
Nov 21 #Python
python 实现表情识别
Nov 21 #Python
python 实现性别识别
Nov 21 #Python
python遍历路径破解表单的示例
Nov 21 #Python
Python如何批量生成和调用变量
Nov 21 #Python
You might like
php单例模式实现(对象只被创建一次)
2012/12/05 PHP
php实现文件下载简单示例(代码实现文件下载)
2014/03/10 PHP
从PHP的源码中深入了解stdClass类
2014/04/18 PHP
PHP高手需要要掌握的知识点
2014/08/21 PHP
php实现计算百度地图坐标之间距离的方法
2016/05/05 PHP
PHP常用操作类之通信数据封装类的实现
2017/07/16 PHP
javascript中的关于类型转换的性能优化
2010/12/14 Javascript
基于jQuery实现的美观星级评论打分组件代码
2015/10/30 Javascript
详解JavaScript 中getElementsByName在IE中的注意事项
2017/02/21 Javascript
前端常见跨域解决方案(全)
2017/09/19 Javascript
利用Node.js了解与测量HTTP所花费的时间详解
2017/09/22 Javascript
快速搭建vue2.0+boostrap项目的方法
2018/04/09 Javascript
微信小程序实现指定显示行数多余文字去掉用省略号代替
2018/07/25 Javascript
Vue源码学习之关于对Array的数据侦听实现
2019/04/23 Javascript
JS中的模糊查询功能
2019/12/08 Javascript
vue项目接口域名动态获取操作
2020/08/13 Javascript
[52:10]LGD vs Optic Supermajor小组赛D组胜者组决赛 BO3 第二场 6.3
2018/06/04 DOTA
python更改已存在excel文件的方法
2018/05/03 Python
在Python中字典根据多项规则排序的方法
2019/01/21 Python
Python读取Pickle文件信息并计算与当前时间间隔的方法分析
2019/01/30 Python
python中sort和sorted排序的实例方法
2019/08/26 Python
把vgg-face.mat权重迁移到pytorch模型示例
2019/12/27 Python
无需压缩软件,用python帮你操作压缩包
2020/08/17 Python
用python实现一个简单计算器(完整DEMO)
2020/10/14 Python
Finishline官网:美国一家领先的运动品牌鞋类、服装零售商
2016/07/20 全球购物
美国最大的旗帜经销商:Carrot-Top
2018/02/26 全球购物
交通安全教育制度
2014/02/02 职场文书
公司财务流程之主管工作流程
2014/03/03 职场文书
物流专业求职信
2014/06/30 职场文书
大学生入党积极分子自我评价
2014/09/20 职场文书
民政局办理协议离婚(范本)
2014/10/25 职场文书
党员教师群众路线个人整改措施
2014/10/28 职场文书
迎新生欢迎词
2015/01/23 职场文书
2015年度团总支工作总结
2015/04/23 职场文书
美丽的大脚观后感
2015/06/03 职场文书
sql server偶发出现死锁的解决方法
2022/04/10 SQL Server