情人节到了,在鲜花巧克力情人节礼物之外,用Python画棵爱心树或者说爱情树,也是很浪漫的。搞技术的怎么就不能浪漫了?我们的浪漫,就在一行行的代码里(指尖流转代码诗)。

在情人节画棵爱心树/爱情树,用的还是turtle(海龟)类库,还是一样的配方,还是熟悉的味道,用得多了,再复杂的也就简单了。但是要用turtle画出酷炫的效果来还是需要不断调整代码和运行测试。

程序运行最后生成的爱心树/爱情树如下:

源代码分享给各位朋友:

#author:hanshiqiang365 (wechat public account)

import turtle

import random

def love(x,y):#在(x,y)处画爱心

turtle.title('Love Tree To Libby by hanshiqiang365')

lv=turtle.Turtle()

lv.hideturtle()

lv.up()

lv.goto(x,y)#定位到(x,y)

def curvemove():#画圆弧

for i in range(20):

lv.right(10)

lv.forward(2)

lv.color('red','pink')

lv.speed(999)

lv.pensize(1)

#开始画爱心

lv.down()

lv.begin_fill()

lv.left(140)

lv.forward(22)

curvemove()

lv.left(120)

curvemove()

lv.forward(22)

lv.write("宝",font=("Arial",15,"normal"),align="center")#写上名字

lv.left(140)

lv.end_fill()

def tree(branchLen,t):

if branchLen > 5:

if branchLen

t.color("green")

t.pensize(random.uniform((branchLen + 5) / 4 - 2, (branchLen + 6) / 4 + 5))

t.down()

t.forward(branchLen)

love(t.xcor(),t.ycor())

t.up()

t.backward(branchLen)

t.color("brown")

return

t.pensize(random.uniform((branchLen+5)/4-2,(branchLen+6)/4+5))

t.down()

t.forward(branchLen)

# 以下递归

ang=random.uniform(15,45)

t.right(ang)

tree(branchLen-random.uniform(12,16),t)

t.left(2*ang)

tree(branchLen-random.uniform(12,16),t)

t.right(ang)

t.up()

t.backward(branchLen)

myWin = turtle.Screen()

t = turtle.Turtle()

t.hideturtle()

t.speed(9999)

t.left(90)

t.up()

t.backward(200)

t.down()

t.color("brown")

t.pensize(32)

t.forward(60)

tree(100,t)

#文字

t.seth(90)

t.fd(-120)

t.write("Love Tree to Libby @hanshiqiang365", font=("微软雅黑", 18, "normal"))

myWin.exitonclick()

程序运行画出爱心树/爱情树的录屏,加上原版背景音乐《世间始终你好》(网易云音乐上可以找到),效果很棒:

那么,在这棵爱心树/爱情树上到底画了多少颗心呢?我在程序里加了一个log就看到了,有兴趣的可以数一数。

画出一棵爱心树/爱情树,需要先画树,然后画心,然后在心里写上字。画一棵树代表爱情的基础(不以结婚为目的没有基础的爱情就是耍流氓,虽说有情饮水饱,但是连水都没有的话,就要拼命了呀,为了爱情,也要努力,爱拼才会赢),画一颗心代表爱情(问世间,是否此山最高,或者,另有高处比天高,在世间,自有山比此山更高,但爱心,找不到比你好......最喜欢的几首歌之一),然后,在心里刻上一个名字(刻骨铭心,就是这个意思,弱水三千,一瓢而止),然后,画上一颗颗爱心挂在树上,那就是爱心树,也是爱情树。愿天下有情人,皆成眷属。

韩思先生,韩世强,在外企工作,英文名或者说德文名是HANS,因此笔名韩思先生,职业IT经理人,半个文化人。好读书,好写作,好爬山,现定居大连。从事IT行业近二十年,积累了丰富的IT软件项目实施和管理经验,知识面较广,并且喜欢总结和分享。

python画爱心树_Python在情人节画棵爱心树/爱情树相关推荐

  1. python绘制蚊香形_python之turtle画蚊香

    原理:利用turtle绘制圆形,并使圆半径逐步增加 代码如下: import turtle turtle.pensize(30) for i in range(30): turtle.circle(i ...

  2. 用python画动图_Python使用matplotlib画动态图

    机器学习需要使用python实现相应的算法,因此学习了Matplotlib中的画图. 当然为了能显示机器学习中每次迭代的效果与收敛速度,需要画出动态图形. 下面给出两个例子,分别可以画出动态条形图和动 ...

  3. python如何绘制曲线图_python pandas plot画折线图如何显示x轴的值?

    在使用python pandas Series plot画折线图时,不知道该如何显示x轴的值. 代码: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 ...

  4. python画饼图程序_python使用matplotlib画饼状图

    本文实例为大家分享了python使用matplotlib画饼状图的具体代码,供大家参考,具体内容如下 代码与详细注释 from matplotlib import pyplot as plt #调节图 ...

  5. python绘制音频频谱_Python 读取wav画频谱

    Python 读取wav音频文件,并用specgram画频谱 import wave import struct from scipy import * from pylab import * #读取 ...

  6. python使用matplotlib 画柱状图代码_Python 使用 matplotlib 画柱状图教程

    Python 使用 matplotlib 画图是非常方便的,之前的文章记录了<Python 使用 matplotlib 画折线图教程>,今天就再次记录一下使用 matplotlib 画柱状 ...

  7. python画五角星代码_Python使用turtule画五角星的方法

    Python使用turtule画五角星的方法 更新时间:2015年07月09日 10:04:03 作者:pythonstart 这篇文章主要介绍了Python使用turtule画五角星的方法,运行该程 ...

  8. 用python画太阳花原理_Python——教你画朵太阳花

    用python中的turtle函数画个太阳花,有以下几个步骤 1.首先,我们在开始中找到Python语言的IDLE软件脚本 2.然后出现该软件界面,如图,点击上面的Eile 3.然后在栏目中点击New ...

  9. python画环形图_Python通过matplotlib画双层饼图及环形图简单示例

    摘要:这篇Python开发技术栏目下的"Python通过matplotlib画双层饼图及环形图简单示例",介绍的技术点是"matplotlib.Python.简单示例.饼 ...

  10. python绘制饼图双层_Python通过matplotlib画双层饼图及环形图简单示例

    (1) 饼图(pie),即在一个圆圈内分成几块,显示不同数据系列的占比大小,这也是我们在日常数据的图形展示中最常用的图形之一. 在python中常用matplotlib的pie来绘制,基本命令如下所示 ...

最新文章

  1. chrome登录_比Chrome还要好用?(全新edge浏览器体验)
  2. 广播系统android安全:flag FLAG_RECEIVER_REGISTERED_ONLY的意义
  3. 【放置奇兵】新版公会战问题
  4. Android中利用HttpClient建立一次持久的连接
  5. java web 笔试 题_JavaWeb综合笔试题(带答案).doc
  6. matlab 刻度非均匀控制,MATLAB 出一张好看的图
  7. 大数——大数相加(hdu1002)
  8. selenium操作webdriver(一)
  9. 开课吧Java课堂:什么是ArrayList类
  10. HCIE Security 防火墙转发流程及相关知识点 备考笔记(幕布)
  11. OpenCV中出现“Microsoft C++ 异常: cv::Exception,位于内存位置 0x0000005C8ECFFA80 处。”的异常
  12. linux如何自定义桌面,如何自定义 GNOME 3 桌面? | Linux 中国
  13. 计算机的组策略配置在什么时候生效,修改组策略生效时间
  14. 西北工业大学21计算机考研,研友分享:西北工业大学计算机考研血泪史
  15. PayPal完成对区块链公司的投资首秀
  16. 真正高质量的免费高速高防空间!
  17. java 给word加水印,Java 实现在线给word 文档添加水印
  18. 项目文件模板-项目可行性研究报告
  19. 走近求伯君1 求伯君,1964年11月26日出生于浙江新昌县。
  20. 手机python软件怎么下载词云_从零开始教你用 Python 做词云

热门文章

  1. Minimax AI 算法在井字游戏(或 Noughts and Crosses)游戏中的实现
  2. UFS Power Management 介绍
  3. 多人同时用一个linux主机,云服务器能否多人使用?
  4. 数据时代的来临,大数据价值主要体现在哪几个方面?
  5. Fate Decision剧本
  6. Mysql中从零点到当前时刻的SQL判断
  7. C#简单实现office转pdf、pdf转图片
  8. 倾向得分匹配PSM案例分析
  9. altium summer 9导入orcad dsn文件的方法
  10. 爬取豆瓣高分电影榜实例