一篇文章教你用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统计一个文本中重复行数的方法
Nov 19 Python
Windows8下安装Python的BeautifulSoup
Jan 22 Python
python实现根据窗口标题调用窗口的方法
Mar 13 Python
Python判断文件和文件夹是否存在的方法
May 21 Python
基于Python实现对PDF文件的OCR识别
Aug 05 Python
Python处理菜单消息操作示例【基于win32ui模块】
May 09 Python
Python中偏函数用法示例
Jun 07 Python
Python中的 is 和 == 以及字符串驻留机制详解
Jun 28 Python
Python 用matplotlib画以时间日期为x轴的图像
Aug 06 Python
使用Python画了一棵圣诞树的实例代码
Nov 27 Python
vue.js刷新当前页面的实例讲解
Dec 29 Python
基于pycharm 项目和项目文件命名规则的介绍
Jan 15 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
win7安装php框架Yii的方法
2016/01/25 PHP
php微信开发之图片回复功能
2018/06/14 PHP
修改jQuery.Autocomplete插件 支持中文输入法 避免TAB、ENTER键失效、导致表单提交
2009/10/11 Javascript
defer属性导致引用JQuery的页面报“浏览器无法打开网站xxx,操作被中止”错误的解决方法
2010/04/27 Javascript
jQuery EasyUI API 中文文档 - ComboGrid 组合表格
2011/10/13 Javascript
Javascript base64编码实现代码
2011/12/02 Javascript
JavaScript高级程序设计 阅读笔记(十三) js定义类或对象
2012/08/14 Javascript
JS+CSS实现感应鼠标渐变显示DIV层的方法
2015/02/20 Javascript
jquery实现简单实用的打分程序实例
2015/07/23 Javascript
JSON字符串转JSON对象
2015/07/31 Javascript
JS 循环li添加点击事件 (闭包的应用)
2016/12/10 Javascript
JS实现动画兼容性的transition和transform实例分析
2016/12/13 Javascript
深入了解JavaScript的逻辑运算符(与、或)
2016/12/20 Javascript
jquery实现下拉框多选方法介绍
2017/01/03 Javascript
vue.js开发环境搭建教程
2017/05/04 Javascript
js编写简单的聊天室功能
2017/08/17 Javascript
浅谈Webpack 持久化缓存实践
2018/03/22 Javascript
Vue+webpack项目配置便于维护的目录结构教程详解
2018/10/14 Javascript
js字符串倒序的实例代码
2018/11/30 Javascript
基于Vue SEO的四种方案(小结)
2019/07/01 Javascript
微信小程序实现多行文字超出部分省略号显示功能
2019/10/23 Javascript
如何搭建一个完整的Vue3.0+ts的项目步骤
2020/10/18 Javascript
Python实现PS滤镜的万花筒效果示例
2018/01/23 Python
Python中单例模式总结
2018/02/20 Python
Django对接支付宝实现支付宝充值金币功能示例
2019/12/17 Python
pytorch中的卷积和池化计算方式详解
2020/01/03 Python
通过实例了解python__slots__使用方法
2020/09/14 Python
澳大利亚在线时尚精品店:Hello Molly
2018/02/26 全球购物
学生发电厂实习自我鉴定
2013/09/22 职场文书
高中的职业生涯规划书
2013/12/28 职场文书
4S店售后客服自我评价
2014/04/09 职场文书
《观舞记》教学反思
2014/04/16 职场文书
企业宣传策划方案
2014/05/29 职场文书
公司演讲稿开场白
2014/08/25 职场文书
高中地理教学反思
2016/02/19 职场文书
Python尝试实现蒙特卡罗模拟期权定价
2022/04/21 Python