一場櫻花雨(Python實現)

專注的阿熊發表於2022-03-16

import turtle as T

import random

import time

#======= 畫櫻花的軀幹 (60,t)===============

T.title(' 凋落的櫻花 ')

def Tree(branch, t):

     time.sleep(0.0005)

     if branch > 3:

         if 8 <= branch <= 12:

             if random.randint(0, 2) == 0:

                 t.color('snow')  #

             else:

                 t.color('lightcoral')  # 淡珊瑚色

             t.pensize(branch / 3)

         elif branch < 8:

             if random.randint(0, 1) == 0:

                 t.color('snow')

             else:

                 t.color('lightcoral')  # 淡珊瑚色

             t.pensize(branch / 2)

         else:

             t.color('sienna')  # (zh ě )

             t.pensize(branch / 10)  # 6

         t.forward(branch)

         a = 1.5 * random.random()

         t.right(20 * a)

         b =外匯跟單gendan5.com 1.5 * random.random()

         Tree(branch - 10 * b, t)

         t.left(40 * a)

         Tree(branch - 10 * b, t)

         t.right(20 * a)

         t.up()

         t.backward(branch)

         t.down()

#============= 掉落的花瓣 ===================

def Petal(m, t):

     for i in range(m):

         a = 200 - 400 * random.random()

         b = 10 - 20 * random.random()

         t.up()

         t.forward(b)

         t.left(90)

         t.forward(a)

         t.down()

         t.color('lightcoral')  # 淡珊瑚色

         t.circle(1)

         t.up()

         t.backward(a)

         t.right(90)

         t.backward(b)

#======= 繪圖區域 ============

t = T.Turtle()

# 畫布大小

w = T.Screen()

t.hideturtle()  # 隱藏畫筆

t.getscreen().tracer(5, 0)

w.screensize(bg='wheat')  # wheat 小麥

t.left(90)

t.up()

t.backward(150)

t.down()

t.color('sienna')

#===== 畫櫻花的軀幹 ===========

Tree(60, t)

# 掉落的花瓣

Petal(200, t)

w.exitonclick()


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69946337/viewspace-2871485/,如需轉載,請註明出處,否則將追究法律責任。

相關文章