一篇文章教你用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 布尔操作实现代码
Mar 23 Python
python中map、any、all函数用法分析
Apr 21 Python
在Python中用keys()方法返回字典键的教程
May 21 Python
Django内容增加富文本功能的实例
Oct 17 Python
Python 实现输入任意多个数,并计算其平均值的例子
Jul 16 Python
Python字典底层实现原理详解
Dec 18 Python
Pytorch 使用CNN图像分类的实现
Jun 16 Python
tensorflow使用CNN分析mnist手写体数字数据集
Jun 17 Python
使用PyWeChatSpy自动回复微信拍一拍功能的实现代码
Jul 02 Python
Python利用命名空间解析XML文档
Aug 10 Python
从Pytorch模型pth文件中读取参数成numpy矩阵的操作
Mar 04 Python
基于tensorflow权重文件的解读
May 26 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屏蔽蜘蛛访问代码及常用搜索引擎的HTTP_USER_AGENT
2013/03/06 PHP
php Hex RGB颜色值互换的使用
2013/05/10 PHP
PHP新特性详解之命名空间、性状与生成器
2017/07/18 PHP
php readfile()修改文件上传大小设置
2017/08/11 PHP
ThinkPHP框架整合微信支付之Native 扫码支付模式二图文详解
2019/04/09 PHP
Laravel实现批量更新多条数据
2020/04/06 PHP
Prototype使用指南之range.js
2007/01/10 Javascript
兼容IE、FireFox、Chrome等浏览器的xml处理函数js代码
2011/11/30 Javascript
js实现日期级联效果
2014/01/23 Javascript
JavaScript中常见的字符串操作函数及用法汇总
2015/05/04 Javascript
再谈JavaScript线程
2015/07/10 Javascript
向JavaScript的数组中添加元素的方法小结
2015/10/24 Javascript
jquery ztree实现模糊搜索功能
2016/02/25 Javascript
JavaScript模拟push
2016/03/06 Javascript
使用Bootstrap框架制作查询页面的界面实例代码
2016/05/27 Javascript
Bootstrap table右键功能实现方法
2017/02/20 Javascript
ES6新数据结构Map功能与用法示例
2017/03/31 Javascript
详解vue 配合vue-resource调用接口获取数据
2017/06/22 Javascript
除Console.log()外更多的Javascript调试命令
2018/01/24 Javascript
JavaScript 正则命名分组【推荐】
2018/06/07 Javascript
Vue axios设置访问基础路径方法
2018/09/19 Javascript
Vue-cli3.x + axios 跨域方案踩坑指北
2019/07/04 Javascript
详解基于Vue的支持数据双向绑定的select组件
2019/09/02 Javascript
[原创]windows下Anaconda的安装与配置正解(Anaconda入门教程)
2018/04/05 Python
Python中利用xpath解析HTML的方法
2018/05/14 Python
keras多显卡训练方式
2020/06/10 Python
PyCharm最新激活码(2020/10/27全网最新)
2020/10/27 Python
英语专业大学生求职简历的自我评价
2013/10/18 职场文书
历史学专业推荐信
2013/11/06 职场文书
大学生职业生涯规划范文
2014/01/08 职场文书
2015年收银工作总结范文
2015/04/01 职场文书
学校教学工作总结2015
2015/05/19 职场文书
离婚协议书范本(2016最新版)
2016/03/18 职场文书
浅谈Python基础之列表那些事儿
2021/05/11 Python
聊聊Lombok中的@Builder注解使用教程
2021/11/17 Java/Android
nginx内存池源码解析
2021/11/20 Servers