Python零基礎(chǔ)入門學(xué)習(xí)18:常用標(biāo)準(zhǔn)庫之turtle繪圖庫

:本文所有代碼均經(jīng)過Python 3.7實(shí)際運(yùn)行檢驗(yàn)降淮,保證其嚴(yán)謹(jǐn)性乞旦。

turtle庫基本介紹

turtle庫,1969年誕生页畦,被Python語言借鑒,是Python的標(biāo)準(zhǔn)庫研儒。

turtle名稱含義為“海龜”豫缨,我們想象一只海龜独令,位于顯示器上窗體的正中心,在畫布上游走州胳,它游走的軌跡就形成了繪制的圖形记焊。海龜?shù)倪\(yùn)動(dòng)是由程序控制的,它可以變換顏色栓撞,改變尺寸遍膜、大小等。利用turtle可以制作很多復(fù)雜的繪圖瓤湘。

turtle庫繪圖窗體布局
turtle.setup(width, height[, startx, starty])

setup()設(shè)置窗體大小及位置瓢颅。width, height分別是窗體本身的寬度和高度,如下圖所示弛说。startx, starty是可選參數(shù)挽懦。

turtle的繪圖窗體
turtle空間坐標(biāo)體系
turtle空間坐標(biāo)體系
turtle坐標(biāo)
turtle坐標(biāo)移動(dòng)
turtle絕對(duì)角度坐標(biāo)體系
turtle絕對(duì)角度的坐標(biāo)系

$turtle.seth(angle)$用來改變海龜行進(jìn)方向,參數(shù)angle為絕對(duì)角度(角度制的度數(shù)值木人,不帶°號(hào))信柿。

turtle海龜角度的坐標(biāo)系

用turtle.right(angle)和turtle.left(angle)來改變turtle行進(jìn)的方向角度。
某個(gè)turtle繪圖示例如下:

import turtle
turtle.left(45)
turtle.fd(150)
turtle.right(135)
turtle.fd(300)
turtle.left(135)
turtle.fd(150)
RGB色彩體系

RGB由三種顏色構(gòu)成的萬物色醒第。

  • RGB指紅藍(lán)綠三個(gè)通道的顏色組合渔嚷。
  • 覆蓋視力所能感知的所有顏色。
  • RGB每色取值范圍是0255整數(shù)稠曼,或01小數(shù)形病。

turtle默認(rèn)使用RGB的小數(shù)值改變顏色,turtle.colormode(mode)

  • 1.0:RGB小數(shù)值模式霞幅。
  • 255:RGB整數(shù)值模式漠吻。

拿紫色的RGB整數(shù)值模式(160, 32, 240)做例子,將其每個(gè)顏色數(shù)值除以255司恳,保留兩位小數(shù)途乃,就能得到其RGB小數(shù)值模式(160/255, 32/255, 240/255),即(0.63, 0.13, 0.94)扔傅。

常用的RGB色彩1
常用的RGB色彩2
turtle畫筆控制函數(shù)

畫筆操作后一直有效欺劳,一般成對(duì)出現(xiàn)。

-turtle.penup()铅鲤,別名turtle.pu()。

抬起畫筆枫弟,海龜在飛行邢享。這時(shí)的軌跡不在畫布上形成痕跡。

-turtle.pendown()淡诗,別名turtle.pd()骇塘。

落下畫筆伊履,海龜在爬行。這時(shí)的軌跡在畫布上形成痕跡款违。

turtle.pu()和turtle.pd()是成對(duì)出現(xiàn)的唐瀑。

-turtle.pensize(width) 別名 turtle.width(width)。

畫筆寬度插爹,海龜?shù)难鼑?/p>

-turtle.pencolor(color)哄辣,color為顏色字符串或RGB值。

畫筆顏色赠尾,海龜在涂裝力穗。

pencolor(color)的color參數(shù)可以有三種形式:

  • 顏色字符串:-turtle.pencolor("purple")
  • RGB的小數(shù)值:turtle.pencolor(0.63, 0.13, 0.94)
  • RGB的元組值:turtle.pencolor((0.63, 0.13, 0.94))
turtle運(yùn)動(dòng)控制函數(shù)

控制海龜行進(jìn):走直線&走曲線:

-turtle.forward(d) 別名 turtle.fd(d),走直線

向前行進(jìn)气嫁,海龜走直線当窗。d:行進(jìn)距離,可以為負(fù)數(shù)寸宵。

-turtle.circle(r, extend=None)崖面,走曲線

根據(jù)半徑r繪制extent角度的弧形。r是默認(rèn)圓心在海龜左側(cè)r距離的位置梯影。extent是繪制角度巫员,默認(rèn)是360°即整圓;當(dāng)extent為正數(shù)時(shí)光酣,圓從turtle當(dāng)前位置逆時(shí)針方向(即順象限方向)畫圓心角為|extent|角度(角度制)的弧形疏遏;當(dāng)extent為負(fù)數(shù)時(shí),圓從turtle當(dāng)前位置順時(shí)針方向(即逆象限方向)畫圓心角為|extent|角度(角度制)的弧形救军。

turtle方向控制函數(shù)

控制海龜面對(duì)方向:絕對(duì)角度&海龜角度

-turtle.setheading(angle) 別名turtle.seth(angle)——絕對(duì)角度
改變行進(jìn)方向财异,海龜走的絕對(duì)角度。angle:改變行進(jìn)方向的絕對(duì)角度唱遭。

-turtle.left(angle), turtle.right(angle)

改變行進(jìn)方向戳寸,海龜走的海龜角度。angle:改變行進(jìn)方向的海龜角度拷泽。

“Python蟒蛇繪制”代碼實(shí)例

import turtle
turtle.setup(650, 350, 200, 200)
turtle.penup()
turtle.fd(-250)
turtle.pendown()
turtle.pensize(25)
turtle.pencolor("purple")
turtle.seth(-40)
for i in range(4):
    turtle.circle(40, 80)
    turtle.circle(-40, 80)
turtle.circle(40, 80/2)
turtle.fd(40)
turtle.circle(16, 180)
turtle.fd(40 * 2/3)
turtle.done() # 用來保持程序的圖象存在疫鹊。若沒有這行,程序運(yùn)行完成后會(huì)自動(dòng)退出司致。

turtle.done() 用來停止畫筆繪制拆吆,但繪圖窗體不關(guān)閉。

To be continued.

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末脂矫,一起剝皮案震驚了整個(gè)濱河市枣耀,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌庭再,老刑警劉巖捞奕,帶你破解...
    沈念sama閱讀 206,311評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件牺堰,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡颅围,警方通過查閱死者的電腦和手機(jī)伟葫,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,339評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來院促,“玉大人筏养,你說我怎么就攤上這事∫环瑁” “怎么了撼玄?”我有些...
    開封第一講書人閱讀 152,671評(píng)論 0 342
  • 文/不壞的土叔 我叫張陵博脑,是天一觀的道長(zhǎng)鳍征。 經(jīng)常有香客問我,道長(zhǎng)融虽,這世上最難降的妖魔是什么眉睹? 我笑而不...
    開封第一講書人閱讀 55,252評(píng)論 1 279
  • 正文 為了忘掉前任荔茬,我火速辦了婚禮,結(jié)果婚禮上竹海,老公的妹妹穿的比我還像新娘慕蔚。我一直安慰自己,他們只是感情好斋配,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,253評(píng)論 5 371
  • 文/花漫 我一把揭開白布孔飒。 她就那樣靜靜地躺著,像睡著了一般艰争。 火紅的嫁衣襯著肌膚如雪坏瞄。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,031評(píng)論 1 285
  • 那天甩卓,我揣著相機(jī)與錄音鸠匀,去河邊找鬼。 笑死逾柿,一個(gè)胖子當(dāng)著我的面吹牛缀棍,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播机错,決...
    沈念sama閱讀 38,340評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼爬范,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了弱匪?” 一聲冷哼從身側(cè)響起青瀑,我...
    開封第一講書人閱讀 36,973評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后狱窘,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,466評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡财搁,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,937評(píng)論 2 323
  • 正文 我和宋清朗相戀三年蘸炸,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片尖奔。...
    茶點(diǎn)故事閱讀 38,039評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡搭儒,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出提茁,到底是詐尸還是另有隱情淹禾,我是刑警寧澤,帶...
    沈念sama閱讀 33,701評(píng)論 4 323
  • 正文 年R本政府宣布茴扁,位于F島的核電站铃岔,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏峭火。R本人自食惡果不足惜毁习,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,254評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望卖丸。 院中可真熱鬧纺且,春花似錦、人聲如沸稍浆。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,259評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽衅枫。三九已至嫁艇,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間为鳄,已是汗流浹背裳仆。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評(píng)論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留孤钦,地道東北人歧斟。 一個(gè)月前我還...
    沈念sama閱讀 45,497評(píng)論 2 354
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像偏形,于是被迫代替她去往敵國和親静袖。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,786評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容