Python繪制隨機(jī)彩色蟒蛇方法淺析
今天老師提出了一個(gè)問題就是用turtle庫繪制隨機(jī)顏色的蟒蛇 并且每段的顏色都是不一樣的 所以我寫了這段代碼 這段代碼的思路是把不同顏色通過字典的方式存起來 通過隨機(jī)數(shù)庫就可以隨機(jī)生成對應(yīng)的key來調(diào)用這些顏色從而實(shí)現(xiàn)隨機(jī)顏色的效果
import turtle
import random#導(dǎo)入隨機(jī)數(shù)模塊實(shí)現(xiàn)隨機(jī)顏色的功能
#把不同顏色用字典的方式儲存 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])#通過索引的方式選擇顏色(顏色是隨機(jī)的)
turtle.circle(40,80)
a = random.randrange(1,7)#獲取隨機(jī)數(shù)并賦值給a
turtle.pencolor(colors[a])#通過索引的方式選擇顏色(顏色是隨機(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é)果

不過這樣子把一個(gè)一個(gè)顏色存進(jìn)去太過麻煩 而且顏色太少了只局限于黑,綠 藍(lán),紅,黃這幾種顏色 沒有達(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) 語句把模式轉(zhuǎn)換成0-255否則會報(bào)錯(cuò)) 定義了一個(gè)模塊的原因是因?yàn)椴煌Mㄟ^賦值的方式改變r(jià)gb的三個(gè)參數(shù)是在太麻煩 所以通過調(diào)用具有生成隨機(jī)顏色功能的模塊的方式更加省力 以下是運(yùn)行結(jié)果

看,隨機(jī)顏色的功能是不是實(shí)現(xiàn)了?
到此這篇關(guān)于Python繪制隨機(jī)彩色蟒蛇方法淺析的文章就介紹到這了,更多相關(guān)Python繪制彩色蟒蛇內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python創(chuàng)建相同值數(shù)組/列表的兩種方法
眾所周知數(shù)組是一種用來在計(jì)算機(jī)中存儲連續(xù)的相同類型數(shù)值的數(shù)據(jù)結(jié)構(gòu),這篇文章主要給大家介紹了關(guān)于Python創(chuàng)建相同值數(shù)組/列表的兩種方法,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-12-12
pandas DataFrame 根據(jù)多列的值做判斷,生成新的列值實(shí)例
今天小編就為大家分享一篇pandas DataFrame 根據(jù)多列的值做判斷,生成新的列值實(shí)例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-05-05
tensorflow實(shí)現(xiàn)從.ckpt文件中讀取任意變量
這篇文章主要介紹了tensorflow實(shí)現(xiàn)從.ckpt文件中讀取任意變量,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-05-05
Python通過調(diào)用有道翻譯api實(shí)現(xiàn)翻譯功能示例
這篇文章主要介紹了Python通過調(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ì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-04-04
python re庫的正則表達(dá)式入門學(xué)習(xí)教程
這篇文章主要給大家介紹了關(guān)于python re庫的正則表達(dá)式的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者使用python具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-03-03

