2.14 python硬核表白代码

点击上方 Java老铁,并选择 设为星标

优质文章和资料会及时送达

心形

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 ' ')#此处是根据心形曲线公式来的(x2+y2-1)3-x2y3=0
for x in range(-30, 30)])#定义高
for y in range(30, -30, -1)]))#定义宽
                veLoveLov          veLoveLov               
            eLoveLoveLoveLove   eLoveLoveLoveLove           
          veLoveLoveLoveLoveLoveLoveLoveLoveLoveLov         
         veLoveLoveLoveLoveLoveLoveLoveLoveLoveLoveL        
        veLoveLoveLoveLoveLoveLoveLoveLoveLoveLoveLov       
        eLoveLoveLoveLoveLoveLoveLoveLoveLoveLoveLove       
        LoveLoveLoveLoveLoveLoveLoveLoveLoveLoveLoveL       
        oveLoveLoveLoveLoveLoveLoveLoveLoveLoveLoveLo       
        veLoveLoveLoveLoveLoveLoveLoveLoveLoveLoveLov       
        eLoveLoveLoveLoveLoveLoveLoveLoveLoveLoveLove       
         oveLoveLoveLoveLoveLoveLoveLoveLoveLoveLove        
          eLoveLoveLoveLoveLoveLoveLoveLoveLoveLove         
          LoveLoveLoveLoveLoveLoveLoveLoveLoveLoveL         
            eLoveLoveLoveLoveLoveLoveLoveLoveLove           
             oveLoveLoveLoveLoveLoveLoveLoveLove            
              eLoveLoveLoveLoveLoveLoveLoveLove             
                veLoveLoveLoveLoveLoveLoveLov               
                  oveLoveLoveLoveLoveLoveLo                 
                    LoveLoveLoveLoveLoveL                   
                       LoveLoveLoveLov                      
                          LoveLoveL                         
                             Lov                            
                              v    

表白树

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()

关注我

获取更多
Java干货

原创文章

视频资料

技术交流群

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值