花式浪漫爱心代码,爱心树来啦

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了花式浪漫爱心代码,爱心树来啦相关的知识,希望对你有一定的参考价值。

爱心代码如下:

# coding=gbk
"""
作者:向阳逐梦
@时间 : 2022/11/09 21:20
"""
import turtle
import random


def love(x, y): # 在(x,y)处画爱心lalala
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(10000000)
lv.pensize(1)
# 开始画爱心lalala
lv.down()
lv.begin_fill()
lv.left(140)
lv.forward(22)
curvemove()
lv.left(120)
curvemove()
lv.forward(22)
lv.write("娜娜", font=("Arial", 12, "normal"), align="center")
lv.left(140) # 画完复位
lv.end_fill()


def tree(branchLen, t):
if branchLen > 5: # 剩余树枝太少要结束递归
if branchLen < 20: # 如果树枝剩余长度较短则变绿
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()) # 传输现在turtle的坐标
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(1000)
t.left(90)
t.up()
t.backward(200)
t.down()
t.color("brown")
t.pensize(32)
t.forward(60)
tree(100, t)
myWin.exitonclick()

代码效果截图:

花式浪漫爱心代码,爱心树来啦_递归

编译软件:pycharm 2021.3版本

代码截图:

花式浪漫爱心代码,爱心树来啦_递归_02

以上是关于花式浪漫爱心代码,爱心树来啦的主要内容,如果未能解决你的问题,请参考以下文章

10个Python绘画表白代码内附源码,再不收藏你只能单身了

程序员的七夕如何花式表白!自嘲:实惨

程序员的七夕如何花式表白!自嘲:实惨

机械人的浪漫:嘉然为你画爱心(python实现)

浪漫的形式有100种,单身的就1种!

用代码写出浪漫__合集(pythonmatplotlibMatlabjava绘制爱心玫瑰花前端特效玫瑰爱心)