还能用python代码画爱心?还有这种操作?这是什么原理?

不相信python代码可以画爱心?先来一张效果图来看看效果吧!

用python代码画爱心的思路是怎样的?

1、怎么画心形曲线

2、怎么填满心形曲线

3、怎么用 python 画出爱心

接下来看好了,满满的都是干货,不收藏将是遗憾哦!

第一:怎么画心形曲线

这个最难的部分,前人已将大树栽好,我们只要记住公式,即可在大树下乘凉哦!

今天我们选用中上的那个图形,一起来看看吧!

第二:怎样填满爱心曲线?

简单说:函数=0 是一根线, 那线的左边跟右边就是大于 0 跟小于 0.

取x, y = 0 , 发现 函数 <=0 是成立的,先试试!

第三:怎么用 python 画出爱心?

我们先测试一下公式:

, 把公式放到 python 中, 借助 sympy 这个库,确认这个公式是否可行。

from sympy import var, plot_implicit

var('x y ')

plot_implicit((x**2+(-y)**2-1)**3+x**2*(-y)**3)

效果如下图所示:(好像还不错哦)。

我们把一行画心的代码解析一下,是这样:

l2=[]

# 将纵向每个字符当作 y 坐标的刻度

for y in range(15,-15,-1):

l3 = []

# 将横向每个字符当作 x 坐标的刻度

for x in range(-30,30):

# 如果 x,y 点在心形内,则将一个字符加入到行,否则加入空字符

l3.append((' I love U'[(x-y)%9]if((x*0.05)**2+(y*0.1)**2-1)**3-(x*0.05)**2*(y*0.1)**3<=0 else' '))

l2.append(''.join(l3))

l1 ='\n'.join(l2)

for i in l1:

print("\033[91m"+i,end="",flush=True)

下面这段代码,是不是跟我们用的公式很像, 只不过做了 x y 轴的缩放:

((x*0.05)**2+(y*0.1)**2-1)**3-(x*0.05)**2*(y*0.1)**3<=0

下面这段代码的意思是:从 ' I love U' 里挑字符出来拼行. 为毛 x-y ? 只为了斜一点, 但要求是保证它的增速为 1 . 你用 x 也行 但画出来就是耿直的 I love U了。

' I love U'[(x-y)%9]

我们只需要将字符当作坐标刻度。去填满

即可!

最后就是print控制颜色:

\033[91m

基本就这样,有兴趣的同学可以将画心的函数都试一下.理论上都可以画出来。 只不过有一些是极坐标,要做一些转换才行。

来源:oschina

链接:https://my.oschina.net/u/4436877/blog/3191913

如何用python画爱心表白_程序员式优雅表白,教你用python代码画爱心相关推荐

  1. python画爱心原理_程序员式优雅表白,教你用python代码画爱心

    还能用python代码画爱心?还有这种操作?这是什么原理? 不相信python代码可以画爱心?先来一张效果图来看看效果吧!PyCharm pro Mac-PyCharm pro for Mac( Py ...

  2. python代码画皮卡丘_程序员式优雅表白,教你用python代码画爱心

    还能用python代码画爱心?还有这种操作?这是什么原理? 不相信python代码可以画爱心?先来一张效果图来看看效果吧! PyCharm pro Mac-PyCharm pro for Mac( P ...

  3. python程序 爱意_程序员式优雅表白,教你用python代码画爱心

    还能用python代码画爱心?还有这种操作?这是什么原理? 不相信python代码可以画爱心?先来一张效果图来看看效果吧!PyCharm pro Mac-PyCharm pro for Mac( Py ...

  4. python什么工作好找女朋友_程序员,三分钟教你用 Python 帮你找一个女朋友

    原标题:程序员,三分钟教你用 Python 帮你找一个女朋友 什么是单身税? 单身税的历史可以追溯到2015年韩国的新政, 低生育率逼得韩国产生了这一政策. 现在我国也要实行这一政策, 很多单身狗就接 ...

  5. python开发pc软件_程序员带你十天快速入门Python,玩转电脑软件开发(二)

    关注今日头条-做全栈攻城狮,学代码也要读书,爱全栈,更爱生活.提供程序员技术及生活指导干货. 如果你真想学习,请评论学过的每篇文章,记录学习的痕迹. 请把所有教程文章中所提及的代码,最少敲写三遍,达到 ...

  6. python画爱心原理_七夕倒计时,程序员式优雅表白,教你用python代码画爱心

    还能用python代码画爱心?还有这种操作?这是什么原理? 不相信python代码可以画爱心?先来一张效果图来看看效果吧! 用python代码画爱心的思路是怎样的? 1.怎么画心形曲线 2.怎么填满心 ...

  7. 十个炫丽的表白模板源码,整合成一个完整系统可修改文字,可统计人数,经典的爱情告白,万能告白模板,胜过鲜花表白,程序员的特殊表白方式说——我爱你(520)——html、js、css、jQuery

    十个炫丽的表白模板源码,整合成一个完整系统可修改文字,可统计人数,经典的爱情告白,万能告白模板,胜过鲜花表白,程序员的特殊表白方式说--我爱你(520)--html.js.css.jQuery. 一. ...

  8. postgresql易学堂_程序员最重要的就是学会“不写代码”

    对什么说"不" 学会说"不"是一个好的开端. 但是到底是对什么说"不",又是什么时候适合说"不"呢? 这的确是大多数程序 ...

  9. python代码画小狗_程序员教你用代码手绘一只可爱的小狗,正好拿去送给女朋友给她个惊喜...

    最近经常在抖音上刷到会画画的大神给小姐姐手绘各种可爱的小动物,非常的哇塞哦~ 作为程序员的我那是羡慕不已啊!我要是学会这招是不是可以尝试给我心仪很久的女神告白了?女神没准会很开心!(好吧,我承认我是舔 ...

最新文章

  1. 衡量计算机的平均无故障时间6,平均无故障时间MTBF测试及计算过程
  2. linux 命令改配置文件,linux下 修改配置文件的命令
  3. 新版ADT出现appcompat_v7的问题
  4. 小码哥30小时快速精通C++和外挂实战特训营
  5. Swift之深入解析可选类型Optional的底层原理
  6. python利用列表计算斐波那契数列前30项_python斐波那契数列的计算方法
  7. include指令与动作的区别【贴心,简洁】
  8. 【OS学习笔记】三十六 保护模式十:通过中断发起任务切换----中断任务
  9. h5优秀控件_H5前端学习的js插件大全,基本包含了大部分的前端最前沿的js插件和库。...
  10. beanutils copyproperties_你还在用BeanUtils进行对象属性拷贝?
  11. 开课吧课堂之如何使用多重catch语句
  12. 【备忘】mysql优化工具
  13. python中的字体英文名,CSS 中文字体的英文名称
  14. C#服务端的微信小游戏——多人在线角色扮演(十二)
  15. tinyMediaManager 群晖 docker
  16. java通过itextpdf实现pdf文件加水印
  17. 我爱天文 - 月亮从哪边升出来?
  18. 专访 | 刘嘉松:开源,互惠且共赢
  19. 前端怎么加粗字体_to B 中后台系统 | Web 端 | UI Style Guideline amp; 前端交付文档...
  20. 20款免费的WordPress企业站主题下载

热门文章

  1. android 定位蓝牙,Android开发-蓝牙RSSI定位
  2. MySQL约束条件及外键的关系
  3. dell kvm java 会话报错_生产环境下戴尔 R820 kvm虚拟化部署三(virt-manager图形化安装kvm虚拟机)...
  4. 经典坦克大战再现(三)
  5. Outlook.com 系列邮箱 POP3 及 IMAP 设置方法
  6. W11系统更新补丁后无法连接共享打印机,显示0X00000709错误
  7. 无盘服务器缓存设置多大,系统虚拟盘和游戏虚拟盘缓存应该设置多少?
  8. MySQL笔记:第07章_InnoDB数据存储结构
  9. 亿康先达2018年取得两位数全球增长
  10. 【LeetCode 】试题总结:广度优先搜索(BFS)