Python繪制隨機(jī)彩色蟒蛇方法淺析
今天老師提出了一個(gè)問(wèn)題就是用turtle庫(kù)繪制隨機(jī)顏色的蟒蛇 并且每段的顏色都是不一樣的 所以我寫了這段代碼 這段代碼的思路是把不同顏色通過(guò)字典的方式存起來(lái) 通過(guò)隨機(jī)數(shù)庫(kù)就可以隨機(jī)生成對(duì)應(yīng)的key來(lái)調(diào)用這些顏色從而實(shí)現(xiàn)隨機(jī)顏色的效果
import turtle
import random#導(dǎo)入隨機(jī)數(shù)模塊實(shí)現(xiàn)隨機(jī)顏色的功能
#把不同顏色用字典的方式儲(chǔ)存 key為1到6的整數(shù)
colors = {1:'blue',2:'yellow',3:'red',4:'purple',5:'black',6:'green'}
turtle.setup(650,350,200,200)
turtle.pu()
turtle.fd(-250)
turtle.pendown()
turtle.width(25)
turtle.seth(-40)
for i in range(4):
a = random.randrange(1,7)#獲取隨機(jī)數(shù)并賦值給a
turtle.pencolor(colors[a])#通過(guò)索引的方式選擇顏色(顏色是隨機(jī)的)
turtle.circle(40,80)
a = random.randrange(1,7)#獲取隨機(jī)數(shù)并賦值給a
turtle.pencolor(colors[a])#通過(guò)索引的方式選擇顏色(顏色是隨機(jī)的)
turtle.circle(-40,80)
turtle.circle(40,80/2)
turtle.fd(40)
turtle.circle(16,180)
turtle.fd(40*2/3)
turtle.done()這個(gè)是運(yùn)行結(jié)果

不過(guò)這樣子把一個(gè)一個(gè)顏色存進(jìn)去太過(guò)麻煩 而且顏色太少了只局限于黑,綠 藍(lán),紅,黃這幾種顏色 沒(méi)有達(dá)到隨機(jī)顏色的目的 所以我加以改進(jìn) 代碼如下
import turtle
import random # 導(dǎo)入隨機(jī)數(shù)模塊實(shí)現(xiàn)隨機(jī)顏色的功能
turtle.colormode(255) # 把顏色表示法取值的模式從[0-1]之間改成[0-255]
#定義一個(gè)生成顏色的模塊
def colorchoose():
a, b, c = random.randrange(0, 256), random.randrange(0, 256), random.randrange(0, 256)
color = (a, b, c)
return color #返回值是一個(gè)rgb顏色
turtle.setup(650, 350, 200, 200)
turtle.pu()
turtle.fd(-250)
turtle.pendown()
turtle.width(25)
turtle.seth(-40)
for i in range(4):
turtle.pencolor(colorchoose()) # 調(diào)用模塊 隨機(jī)生成rgb顏色
turtle.circle(40, 80)
turtle.pencolor(colorchoose()) # 調(diào)用模塊 隨機(jī)生成rgb顏色
turtle.circle(-40, 80)
turtle.circle(40, 80 / 2)
turtle.fd(40)
turtle.circle(16, 180)
turtle.fd(40 * 2 / 3)
turtle.done()
這段代碼里的顏色變換直接取決于rgb顏色的三個(gè)參數(shù) 所以我讓他們變?yōu)殡S機(jī)的 范圍定在0-255(注:python里的rgb顏色參數(shù)模式默認(rèn)是0-1 用turtle的話需要用turtle.colormode(255) 語(yǔ)句把模式轉(zhuǎn)換成0-255否則會(huì)報(bào)錯(cuò)) 定義了一個(gè)模塊的原因是因?yàn)椴煌Mㄟ^(guò)賦值的方式改變r(jià)gb的三個(gè)參數(shù)是在太麻煩 所以通過(guò)調(diào)用具有生成隨機(jī)顏色功能的模塊的方式更加省力 以下是運(yùn)行結(jié)果

看,隨機(jī)顏色的功能是不是實(shí)現(xiàn)了?
到此這篇關(guān)于Python繪制隨機(jī)彩色蟒蛇方法淺析的文章就介紹到這了,更多相關(guān)Python繪制彩色蟒蛇內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python創(chuàng)建相同值數(shù)組/列表的兩種方法
眾所周知數(shù)組是一種用來(lái)在計(jì)算機(jī)中存儲(chǔ)連續(xù)的相同類型數(shù)值的數(shù)據(jù)結(jié)構(gòu),這篇文章主要給大家介紹了關(guān)于Python創(chuàng)建相同值數(shù)組/列表的兩種方法,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-12-12
pandas DataFrame 根據(jù)多列的值做判斷,生成新的列值實(shí)例
今天小編就為大家分享一篇pandas DataFrame 根據(jù)多列的值做判斷,生成新的列值實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-05-05
tensorflow實(shí)現(xiàn)從.ckpt文件中讀取任意變量
這篇文章主要介紹了tensorflow實(shí)現(xiàn)從.ckpt文件中讀取任意變量,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-05-05
Python通過(guò)調(diào)用有道翻譯api實(shí)現(xiàn)翻譯功能示例
這篇文章主要介紹了Python通過(guò)調(diào)用有道翻譯api實(shí)現(xiàn)翻譯功能,結(jié)合實(shí)例形式分析了基于Python實(shí)現(xiàn)的有道翻譯api調(diào)用相關(guān)操作技巧,需要的朋友可以參考下2018-07-07
python 在右鍵菜單中加入復(fù)制目標(biāo)文件的有效存放路徑(單斜杠或者雙反斜杠)
這篇文章主要介紹了python 在右鍵菜單中加入復(fù)制目標(biāo)文件的有效存放路徑(單斜杠或者雙反斜杠),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-04-04
python通過(guò)第三方庫(kù)操作PDF文件的幾種常見(jiàn)方法
Python是一種高級(jí)編程語(yǔ)言,主要用于數(shù)據(jù)分析、機(jī)器學(xué)習(xí)、圖像處理等領(lǐng)域,在PDF文件處理方面,Python有許多強(qiáng)大的庫(kù)和工具,這篇文章主要給大家介紹了關(guān)于python通過(guò)第三方庫(kù)操作PDF文件的幾種常見(jiàn)方法,需要的朋友可以參考下2024-02-02
python re庫(kù)的正則表達(dá)式入門學(xué)習(xí)教程
這篇文章主要給大家介紹了關(guān)于python re庫(kù)的正則表達(dá)式的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者使用python具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-03-03

