一篇文章教你用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之PyUnit单元测试实例
Oct 11 Python
在Python中操作时间之strptime()方法的使用
Dec 30 Python
Python Socket实现简单TCP Server/client功能示例
Aug 05 Python
名片管理系统python版
Jan 11 Python
Python 获得命令行参数的方法(推荐)
Jan 24 Python
Python3使用pandas模块读写excel操作示例
Jul 03 Python
python实现机器学习之多元线性回归
Sep 06 Python
PyTorch 1.0 正式版已经发布了
Dec 13 Python
Python3.6.x中内置函数总结及讲解
Feb 22 Python
numpy数组做图片拼接的实现(concatenate、vstack、hstack)
Nov 08 Python
pytorch 实现tensor与numpy数组转换
Dec 27 Python
Python中的全局变量如何理解
Jun 04 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
常用星际术语索引(新手指南)
2020/03/04 星际争霸
漂亮但不安全的CTB
2006/10/09 PHP
php 什么是PEAR?(第二篇)
2009/03/19 PHP
PHP imagegrabscreen和imagegrabwindow(截取网站缩略图)的实例代码
2013/11/07 PHP
ThinkPHP框架实现session跨域问题的解决方法
2014/07/01 PHP
php socket实现的聊天室代码分享
2014/08/16 PHP
js 中{},[]中括号,大括号使用详解
2011/05/12 Javascript
JS实现5秒钟自动封锁div层的方法
2015/02/20 Javascript
JS或jQuery获取ASP.NET服务器控件ID的方法
2015/06/08 Javascript
jQuery通用的全局遍历方法$.each()用法实例
2016/07/04 Javascript
JS实现的手机端精简幻灯片效果
2016/09/05 Javascript
原生javascript实现的ajax异步封装功能示例
2016/11/03 Javascript
Angular2 组件交互实例详解
2017/08/24 Javascript
EasyUI框架 使用Ajax提交注册信息的实现代码
2017/09/27 Javascript
JavaScript实现一个简易的计算器实例代码
2018/05/10 Javascript
微信小程序实现tab左右切换效果
2020/11/15 Javascript
js最实用string(字符串)类型的使用及截取与拼接详解
2019/04/26 Javascript
Flutter部件内部状态管理小结之实现Vue的v-model功能
2019/06/11 Javascript
Vue 使用Props属性实现父子组件的动态传值详解
2019/11/13 Javascript
JavaScript冒泡算法原理与实现方法深入理解
2020/06/04 Javascript
swiper实现导航滚动效果
2020/12/13 Javascript
Python中字符串格式化str.format的详细介绍
2017/02/17 Python
python障碍式期权定价公式
2019/07/19 Python
利用OpenCV和Python实现查找图片差异
2019/12/19 Python
python 基于wx实现音乐播放
2020/11/24 Python
用纯css3实现的图片放大镜特效效果非常不错
2014/09/02 HTML / CSS
自我鉴定怎么写
2013/12/05 职场文书
总经理秘书工作职责
2013/12/26 职场文书
工程质量月活动方案
2014/02/19 职场文书
百年校庆节目主持词
2014/03/27 职场文书
单位接收函格式
2015/01/30 职场文书
大学军训决心书
2015/02/05 职场文书
2015年复活节活动总结
2015/02/27 职场文书
道歉的话语大全
2015/05/12 职场文书
2016保送生自荐信范文
2016/01/29 职场文书
Oracle 区块链表创建过程详解
2021/05/15 Oracle