Python源码小项目圣诞树直接给 不啰嗦

import turtle as t
import random
import time
def drawlight():
   """
  画彩灯
  """
   if random.randint(0, 30) == 0:
       t.color('tomato')
       t.circle(6)
   elif random.randint(0,30) == 1:
       t.color('orange')
       t.circle(3)
   else:
       t.color('dark green')


def tree(d, s):
   '''
  画树
  '''
   if d <= 0:
       return
   t.forward(s)
   tree(d-1, s*.8)
   t.right(120)
   tree(d-3, s*.5)
   drawlight()
   t.right(120)
   tree(d-3, s*.5)
   t.right(120)
   t.backward(s)


def drawsnow():
   '''
  画雪花
  '''
   t.ht()
   t.pensize(2)
   for i in range(200):
       t.pencolor("white")
       t.pu()
       t.setx(random.randint(-350,350))
       t.sety(random.randint(-100,350))
       t.pd()
       dens = 6
       snowsize = random.randint(1,10)
       for j in range(dens):
           t.fd(int(snowsize))
           t.backward(int(snowsize))
           t.right(int(360/dens))

n = 100.0

t.speed("fastest")
t.delay(0)
t.screensize(bg='black')
t.left(90)
t.forward(3*n)
t.color("orange", "yellow")
t.begin_fill()
t.left(126)
for i in range(5):
   t.forward(n/5)
   t.right(144)
   t.forward(n/5)
   t.left(72)
t.end_fill()
t.right(126)

t.color("dark green")
t.backward(n*4.8)

tree(15, n)
t.backward(n/2)

for i in range(200):
   a = 200 - 400 * random.random()
   b = 10 - 20 * random.random()
   t.up()
   t.forward(b)
   t.left(90)
   t.forward(a)
   t.down()
   if random.randint(0, 1) == 0:
       t.color('tomato')
   else:
       t.color('wheat')
   t.circle(2)
   t.up()
   t.backward(a)
   t.right(90)
   t.backward(b)

t.color("dark red","red")
t.write("Merry Christmas!!!",align ="center",font=("Comic Sans MS",40,"bold"))

drawsnow()
t.done()

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值