Turtle 隨機彩虹

2021-10-02 03:06:49 字數 3660 閱讀 6201

隨機彩虹

import turtle as t #匯入turtle

import random #匯入random

t.colormode(

255)

#設定顏色模式

t.pensize(9)

#畫筆寬度

t.color(

"white"

)#初始化畫筆白色

t.goto(

150,-50

)#為了讓彩虹居中

t.left(

105)

#為了讓彩虹平衡

for i in

range

(150

,350,9

):#在150到350之前,每隔9取值

a,b,c = random.randint(0,

255)

,random.randint(0,

255)

,random.randint(0,

255)

#顏色隨機生成

t.color(a,b,c)

#畫筆隨機取色

t.circle(i*(-

1)**i,

150)

#畫150度弧線,方向與i相關

t.right(90*

(2+(

-1)**

(i+1))

)#向右旋轉90度或者270度,與i取值相關

t.pu(

)#畫筆抬起

t.forward(9)

#向前移動距離9

t.pd(

)#畫筆落下

t.right(90*

(2+(

-1)**

(i+1))

)#向右旋轉90度或者270度,與i取值相關

t.hideturtle(

)#隱藏畫筆頭

t.done(

)#結束並保留視窗

實現2:

import turtle as t #匯入turtle

import random #匯入random

defpen_set()

: t.hideturtle(

)#隱藏畫筆頭

t.colormode(

255)

#設定顏色模式

t.color(

"white"

)#初始化畫筆白色

defpen_random_color()

: t.color(random.randint(0,

255)

,random.randint(0,

255)

,random.randint(0,

255)

)#畫筆隨機取色

defr_move

(n):

#畫筆平移

t.pu(

) t.right(90)

t.fd(n)

t.pd(

) t.left(90)

defarc

(n,angle)

:#畫弧

t.circle(n,angle)

t.pu(

) t.circle(n,

-angle)

t.pd(

)def

rainbow

(a,b,c,d)

:#(最小半徑,最大半徑,彩虹弧度,彩虹寬度或筆寬)

pen_set(

) t.goto(c,

-c/2

)#為了讓彩虹居中

t.left(

180-c/2)

#為了讓彩虹平衡

t.pensize(d)

#畫筆寬度

for i in

range

(a,b,d)

:#在150到350之前,每隔9取值

pen_random_color(

) arc(i,c)

#畫150度弧線,方向與i相關

r_move(d)

t.done(

)#結束並保留視窗

defmain()

: rainbow(

200,

400,

150,20)

if __name__ ==

"__main__"

: main(

)

實現3:

import turtle as t #匯入turtle

import random #匯入random

r = random.randint

defpen_set

(a,c,d)

:#(小半徑,弧度,筆寬)

t.hideturtle(

)#隱藏畫筆頭

t.colormode(

255)

#設定顏色模式

t.color(

"white"

)#初始化畫筆白色

t.goto(a,

-a/2

)#為了讓彩虹居中

t.left(

180-c/2)

#為了讓彩虹平衡

t.pensize(d+1)

#畫筆寬度

defpen_random_color()

: t.color(r(0,

255)

,r(0

,255

),r(0,

255)

)#畫筆隨機取色

defr_move

(n):

#畫筆平移

t.pu(

) t.right(90)

t.fd(n)

t.pd(

) t.left(90)

defarc

(n,angle)

:#畫弧(半徑,弧度)

t.circle(n,angle)

t.pu(

) t.circle(n,

-angle)

t.pd(

)def

rainbow

(a,b,c,d)

:#(最小半徑,最大半徑,彩虹弧度,彩虹寬度或筆寬)

pen_set(a,c,d)

for i in

range

(a,b,d)

:#在150到350之前,每隔9取值

pen_random_color(

) arc(i,c)

#畫150度弧線,方向與i相關

r_move(d)

t.done(

)#結束並保留視窗

defmain()

: rainbow(r(

150,

250)

,r(350

,450

),r(90,

180)

,r(15,25

))if __name__ ==

"__main__"

: main(

)

彩虹瓶詳解

彩虹瓶彩虹瓶的製作過程 並不 是這樣的 先把一大批空瓶鋪放在裝填場地上,然後按照一定的順序將每種顏色的小球均勻撒到這批瓶子裡。假設彩虹瓶裡要按順序裝 n 種顏色的小球 不妨將順序就編號為 1 到 n 現在工廠裡有每種顏色的小球各一箱,工人需要一箱一箱地將小球從工廠裡搬到裝填場地。如果搬來的這箱小球正...

turtle模組使用

示例 python import turtle 匯入 turtle 模組 turtle.showturtle 顯示箭頭 turtle.write 高淇 寫字串 turtle.forward 300 前進 300 畫素 turtle.color red 畫筆顏色改為 red turtle.left 9...

turtle 繪製愛心

import turtle import time 畫愛心的頂部 deflittleheart for i in range 200 turtle.right 1 turtle.forward 2 輸入表白的語句,預設i love you love input please enter a sent...