要求實現的功能:
在turtle畫板上隨機位置(不超過畫板),產生隨機大小(合適的大小)的科赫雪花,並且雪花的數量也是隨機的,在[2,10]之間。
實現**:
# @time : 2020/4/13
# @file : chap04.py
# @title : "科赫雪花小包裹"問題,要求雪花位置隨機(畫布之內),雪花個數隨機[2,10]之間。雪花大小隨機(適合的大小)
# @software: pycharm
import turtle as t
import random
#繪製科赫曲線
defdrawcurve
(len
,n):
if n==0:
t.fd(
len)
else
:for angle in[0
,60,-
120,60]
: t.left(angle)
drawcurve(
len/
3,n-1)
#繪製一朵科赫雪花
defdrawsnowflake
(size,n)
:for i in
range
(n):
drawcurve(size,n)
t.right(
120)
defrand_snow
(po_x,po_y,size,n)
:#去到隨機位置
t.penup(
) t.goto(po_x,po_y)
t.pendown(
)#調整隨機數量,隨機合適大小
t.begin_fill(
) drawsnowflake(size,n)
t.end_fill()n=
3t.setup(
800,
800)
t.pensize(1)
t.speed(9)
t.bgcolor(
'#0032c8'
)#畫筆顏色和填充圖形的顏色都是白色
t.color(
'white'
,'white'
)#產生隨機的雪花數量
snow_num = random.randint(2,
10)for i in
range
(snow_num)
:#產生隨機的位置座標po_x,po_y,隨機雪花大小snow_size
po_x = random.randint(
-360
,360
) po_y = random.randint(
-360
,360
) snow_size = random.randint(15,
40)rand_snow(po_x,po_y,snow_size,n)
t.hideturtle(
)t.done(
)
科赫雪花繪製小包裹
遞迴思想 函式加分支 遞迴鏈條 線段的組合 遞迴基例 初始線段 科赫雪花繪製小包裹 import turtle as tu defkoch size,n if n 0 tu.fd size else for angle in 0 60,120,60 tu.left angle koch size 3...
例項八 科赫雪花小包裹
三階科赫曲線的繪製 import turtle def koch size,n if n 0 turtle.fd size else for angle in 0,60,120,60 turtle.left angle koch size 3,n 1 def main turtle.setup 80...
Python 科赫雪花繪製
科赫曲線繪製 kochdrawv1.py import turtle def koch size,n size表示繪製科赫曲線的每乙個直線的長度,n表示繪製的階數 if n 0 turtle.fd size 繪製一條直線 else for angle in 0,60,120,60 turtle.le...