python浪漫表白代码

python浪漫表白代码

示例代码:

import turtle
import random


#  在(x, y)处画爱心lalala
def love(x, y):
    lv = turtle.Turtle()
    lv.hideturtle()
    lv.up()
    # 定位到(x, y)
    lv.goto(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)
            # 传输现在turtle的坐标
            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(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()

运行效果:

python浪漫表白代码_第1张图片

你可能感兴趣的:(python,python)