欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

通過(guò)Turtle庫(kù)在Python中繪制一個(gè)鼠年福鼠

 更新時(shí)間:2020年02月03日 09:40:40   作者:州的先生  
這篇文章主要介紹了通過(guò)Turtle庫(kù)在Python中繪制一個(gè)鼠年福鼠,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

turtle庫(kù)是一個(gè)很經(jīng)典的繪圖庫(kù),其最初來(lái)自于1967年創(chuàng)造的logo編程語(yǔ)言,之后被Python編寫(xiě)放到了Python的內(nèi)置模塊中。網(wǎng)絡(luò)上有很多借助于turtle繪制精美圖像的案例。比如小豬佩奇、皮卡丘、柯基犬等等。趁著新年假期還未結(jié)束,今天州的先生(https://zmister.com)為大家?guī)?lái)一個(gè)福鼠的繪制。

一、繪制鼠頭

首先,咱們(https://zmister.com)把鼠的頭給繪制了。鼠頭主要是由圓來(lái)構(gòu)成,臉龐是一個(gè)大圓,耳朵、眉毛、眼睛、嘴角和鼻子也都是由不同弧度的圓構(gòu)成。鼠頭的繪制代碼如下所示:

def head():
 turtle.color('black')

 # 臉輪廓
 turtle.pd() # 落筆
 turtle.circle(50) # 畫(huà)一個(gè)半徑為50的圓
 turtle.pu() # 提筆

 # 右耳輪廓
 turtle.goto(50,60) # 移動(dòng)到x=50,y=60的位置
 turtle.pd() # 落筆
 turtle.circle(30,260) # 畫(huà)一個(gè)半徑為30,角度為245的圓弧
 turtle.pu() # 提筆
 # 右耳耳紋
 turtle.goto(30,90)
 turtle.pd()
 turtle.seth(65)
 turtle.circle(-30,70)
 turtle.pu()

 # 左耳輪廓
 turtle.goto(-50,60)
 turtle.pd()
 turtle.seth(180) # 設(shè)置方向?yàn)槲鳎?
 turtle.circle(-30,260)
 turtle.pu()
 # 左耳耳紋
 turtle.goto(-30,90)
 turtle.pd()
 turtle.seth(120)
 turtle.circle(30,70)
 turtle.pu()

 # 面部五官
 # 右側(cè)眉毛
 turtle.goto(5,80)
 turtle.seth(20)
 turtle.pd()
 turtle.circle(-25,40)
 turtle.pu()
 # 左側(cè)眉毛
 turtle.goto(-5,80)
 turtle.seth(160)
 turtle.pd()
 turtle.circle(25,40)
 turtle.pu()

 # 右側(cè)眼睛
 turtle.begin_poly()
 turtle.goto(8,60)
 turtle.seth(45)
 turtle.pd()
 turtle.circle(-15,120)
 turtle.pu()
 turtle.goto(8,60)
 turtle.seth(40)
 turtle.pd()
 turtle.circle(-15,100)
 turtle.pu()
 turtle.end_poly()

 # 左側(cè)眼睛
 turtle.goto(-8,60)
 turtle.seth(135)
 turtle.pd()
 turtle.circle(15,120)
 turtle.pu()
 turtle.goto(-8,60)
 turtle.seth(140)
 turtle.pd()
 turtle.circle(15,100)
 turtle.pu()

 # 鼻子
 # 鼻子上瓣
 turtle.goto(-6,45)
 turtle.seth(70)
 turtle.pd()
 turtle.circle(-6,150)
 turtle.pu()
 # 鼻子下瓣
 turtle.goto(-6,45)
 turtle.seth(-70)
 turtle.pd()
 turtle.circle(6,150)
 turtle.pu()

 # 鼻線
 turtle.goto(0,40)
 turtle.seth(270)
 turtle.pd()
 turtle.forward(7)
 turtle.pu()

 # 上嘴線
 turtle.seth(200)
 turtle.pd()
 turtle.circle(-15,60)
 turtle.pu()

 turtle.goto(0,33)
 turtle.seth(-20)
 turtle.pd()
 turtle.circle(15,60)
 turtle.pu()

 # 下嘴線
 turtle.goto(10,33)
 turtle.seth(260)
 turtle.pd()
 turtle.circle(-15,65)
 turtle.pu()

 turtle.goto(-10,33)
 turtle.seth(280)
 turtle.pd()
 turtle.circle(15,65)
 turtle.pu()

 # 牙齒
 turtle.goto(4,33)
 turtle.seth(270)
 turtle.pd()
 turtle.forward(4)
 turtle.seth(180)
 turtle.forward(8)
 turtle.seth(90)
 turtle.forward(4)
 turtle.pu()

 # 胡須
 turtle.pensize(2)
 turtle.goto(30,30)
 turtle.seth(8)
 turtle.pd()
 turtle.circle(-60,40)
 turtle.pu()

 turtle.goto(30,25)
 turtle.seth(-5)
 turtle.pd()
 turtle.circle(-60,40)
 turtle.pu()


 turtle.goto(-30,30)
 turtle.seth(172)
 turtle.pd()
 turtle.circle(60,40)
 turtle.pu()

 turtle.goto(-30,25)
 turtle.seth(188)
 turtle.pd()
 turtle.circle(60,40)
 turtle.pu()

 # 睫毛
 turtle.pensize(1)
 turtle.goto(30,58)
 turtle.seth(20)
 turtle.pd()
 turtle.circle(20,20)
 turtle.pu()

 turtle.pensize(1)
 turtle.goto(28,62)
 turtle.seth(25)
 turtle.pd()
 turtle.circle(20,12)
 turtle.pu()

 turtle.pensize(1)
 turtle.goto(-30,58)
 turtle.seth(160)
 turtle.pd()
 turtle.circle(-20,20)
 turtle.pu()

 turtle.pensize(1)
 turtle.goto(-28,62)
 turtle.seth(165)
 turtle.pd()
 turtle.circle(-20,12)
 turtle.pu()

運(yùn)行上述代碼,我們可以看到鼠頭可以完整地繪制出來(lái)了,如下動(dòng)圖所示:

二、繪制身體

接著,咱們來(lái)繪制老鼠的身體。我們(https://zmister.com)畫(huà)的這個(gè)老鼠是一個(gè)穿著財(cái)神服站立拱手的老鼠,所以它的身體需要重點(diǎn)突出的是服裝:

def body():
 # 左手
 turtle.goto(-25,8)
 turtle.seth(240)
 turtle.pd()
 turtle.circle(150,15)
 turtle.seth(270)
 turtle.circle(40,15)
 turtle.circle(15,65)
 turtle.seth(0)
 turtle.forward(10)
 turtle.circle(10,100)
 turtle.seth(90)
 turtle.forward(5)
 turtle.circle(10,100)
 turtle.seth(180)
 turtle.forward(10)
 turtle.pu()
 # 右手
 turtle.goto(25,8)
 turtle.seth(-60)
 turtle.pd()
 turtle.circle(-150,15)
 turtle.seth(270)
 turtle.circle(-40,15)
 turtle.circle(-15,65)
 turtle.seth(180)
 turtle.forward(10)
 turtle.circle(-10,100)
 turtle.seth(90)
 turtle.forward(5)
 turtle.circle(-10,100)
 turtle.seth(0)
 turtle.forward(10)
 turtle.pu()

 # 袍子
 turtle.goto(-30,-48)
 turtle.seth(270)
 turtle.pd()
 turtle.forward(30)
 turtle.circle(10,100)
 turtle.seth(0)
 turtle.forward(38)
 turtle.circle(10,100)
 turtle.seth(90)
 turtle.forward(30)
 turtle.pu()

 # 領(lǐng)口
 turtle.goto(-20,4)
 turtle.pd()
 turtle.seth(300)
 turtle.circle(30,20)
 turtle.seth(0)
 turtle.forward(25)
 turtle.seth(30)
 turtle.circle(30,20)
 turtle.pu()

 # 官帶
 turtle.goto(-7,-38)
 turtle.seth(0)
 turtle.pd()
 turtle.forward(15)
 turtle.pu()
 turtle.goto(-30,-54)
 turtle.pd()
 turtle.forward(60)
 turtle.pu()

 # 袍子上的波浪
 turtle.goto(-30,-80)
 turtle.pd()
 turtle.seth(90)
 turtle.circle(-5,180)
 turtle.seth(90)
 turtle.circle(-5,180)
 turtle.seth(90)
 turtle.circle(-5,180)
 turtle.seth(90)
 turtle.circle(-5,180)
 turtle.seth(90)
 turtle.circle(-5,180)
 turtle.seth(90)
 turtle.circle(-5,180)
 turtle.pu()

 turtle.goto(-25,-85)
 turtle.pd()
 turtle.seth(90)
 turtle.circle(-5,180)
 turtle.seth(90)
 turtle.circle(-5,180)
 turtle.seth(90)
 turtle.circle(-5,180)
 turtle.seth(90)
 turtle.circle(-5,180)
 turtle.seth(90)
 turtle.circle(-5,180)
 turtle.pu()

運(yùn)行上述代碼,我們可以看到老鼠身體的繪制過(guò)程,如下動(dòng)圖所示:

這里先不將其匯合在一起,待幾個(gè)部件都完成之后,我們?cè)賹⑵浣M成一個(gè)完整地老鼠。

三、繪制手

上面繪制的身體還缺了兩只手,對(duì)了,還有袍子上的一個(gè)大金錢(qián),我們將其補(bǔ)上:

def hands():
 turtle.goto(-8, -25)
 turtle.pd()
 turtle.seth(30)
 turtle.forward(10)
 turtle.seth(0)
 turtle.circle(-10, 50)
 turtle.seth(210)
 turtle.forward(18)

 turtle.back(10)
 turtle.seth(-45)
 turtle.forward(10)
 turtle.back(10)
 turtle.seth(30)
 turtle.forward(8)
 turtle.seth(300)
 turtle.forward(5)
 turtle.pu()

 turtle.goto(0, -75)
 turtle.pd()
 turtle.seth(0)
 turtle.circle(10)
 turtle.seth(90)
 turtle.circle(10, 90)
 turtle.seth(0)
 turtle.circle(10, 90)
 turtle.seth(270)
 turtle.circle(10, 90)
 turtle.seth(180)
 turtle.circle(10, 90)
 turtle.pu()

拱手和金錢(qián)沒(méi)有和身體結(jié)合在一起時(shí),暫時(shí)看不出上面效果來(lái),如下動(dòng)圖所示:

四、繪制帽子

老鼠還戴了一頂金錢(qián)帽,咱們(zmister.com)現(xiàn)在給它加上:

def hat():
 # 畫(huà)帽子
 turtle.goto(-20,98)
 turtle.pd()
 turtle.seth(80)
 turtle.forward(20)
 turtle.seth(60)
 turtle.circle(-20,140)
 turtle.seth(-85)
 turtle.forward(18)
 turtle.pu()

 turtle.goto(-20,98)
 turtle.pd()
 turtle.seth(80)
 turtle.forward(5)
 turtle.seth(30)
 turtle.forward(22)
 turtle.seth(-25)
 turtle.forward(24)
 turtle.pu()

 turtle.goto(0,127)
 turtle.pd()
 turtle.seth(0)
 turtle.circle(5)
 turtle.pu()

 turtle.goto(0,125)
 turtle.pd()
 turtle.seth(270)
 turtle.forward(10)
 turtle.pu()

 # 右邊抖帶
 turtle.goto(19,110)
 turtle.pd()
 turtle.seth(30)
 turtle.circle(40,50)
 turtle.seth(0)
 turtle.circle(10)
 turtle.seth(90)
 turtle.circle(10,90)
 turtle.seth(0)
 turtle.circle(10,90)
 turtle.seth(270)
 turtle.circle(10,90)
 turtle.seth(180)
 turtle.circle(10,90)
 turtle.pu()

 # 左邊抖帶
 turtle.goto(-19,110)
 turtle.pd()
 turtle.seth(150)
 turtle.circle(-40,50)
 turtle.seth(0)
 turtle.circle(10)
 turtle.seth(90)
 turtle.circle(10,90)
 turtle.seth(0)
 turtle.circle(10,90)
 turtle.seth(270)
 turtle.circle(10,90)
 turtle.seth(180)
 turtle.circle(10,90)
 turtle.pu()

帽子主要都是由圓構(gòu)成,其繪制過(guò)程如下動(dòng)圖所示:

五、繪制尾巴

先不著急為老鼠帶上金錢(qián)帽,我們還忘記了老鼠有一根長(zhǎng)長(zhǎng)的尾巴,為它補(bǔ)上吧:

def tail():
 turtle.goto(30, -60)
 turtle.pd()
 turtle.seth(20)
 turtle.circle(40, 80)
 turtle.circle(-20, 180)
 turtle.circle(-10, 90)

尾巴就是兩個(gè)方向相反弧度不同的圓,效果我們就不演示了。最后將其結(jié)合在一起:

if __name__ == '__main__':
 head()
 body()
 hands()
 hat()
 tail()
 turtle.done()

我們就可以看到一個(gè)完整的鼠年福鼠繪制過(guò)程,如下動(dòng)圖所示:

總結(jié)

以上所述是小編給大家介紹的通過(guò)Turtle庫(kù)在Python中繪制一個(gè)鼠年福鼠,希望對(duì)大家有幫助!

相關(guān)文章

  • Django實(shí)現(xiàn)翻頁(yè)的示例代碼

    Django實(shí)現(xiàn)翻頁(yè)的示例代碼

    翻頁(yè)是經(jīng)常使用的功能,Django提供了翻頁(yè)器。用Django的Paginator類實(shí)現(xiàn),有需要了解Paginator類用法的朋友可參考。希望此文章對(duì)各位有所幫助
    2021-05-05
  • Python類中的裝飾器在當(dāng)前類中的聲明與調(diào)用詳解

    Python類中的裝飾器在當(dāng)前類中的聲明與調(diào)用詳解

    這篇文章主要介紹了Python類中的裝飾器在當(dāng)前類中的聲明與調(diào)用詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-04-04
  • Python入門(mén)變量的定義及類型理解

    Python入門(mén)變量的定義及類型理解

    本文適合編程語(yǔ)言零基礎(chǔ)的初學(xué)者,有打算轉(zhuǎn)行學(xué)習(xí)python的可以添加關(guān)注,后續(xù)小編將會(huì)把自己轉(zhuǎn)行學(xué)pyhton語(yǔ)言以來(lái)的所有筆記,和工作中總結(jié)的一些開(kāi)發(fā)經(jīng)驗(yàn)分享給大家
    2021-09-09
  • requests.gPython?用requests.get獲取網(wǎng)頁(yè)內(nèi)容為空?’?’問(wèn)題

    requests.gPython?用requests.get獲取網(wǎng)頁(yè)內(nèi)容為空?’?’問(wèn)題

    這篇文章主要介紹了requests.gPython?用requests.get獲取網(wǎng)頁(yè)內(nèi)容為空?’?’,溫行首先舉例說(shuō)明,具有一定得參考價(jià)值,需要的小伙伴可以參考一下
    2022-01-01
  • 關(guān)于python中.xpath的使用問(wèn)題

    關(guān)于python中.xpath的使用問(wèn)題

    根據(jù)xpath定位到了tr,注意瀏覽器自動(dòng)生成了tbody,在python中要把自動(dòng)生成的tbody層級(jí)去掉,這樣要怎么操作呢?下面通過(guò)代碼給大家介紹下python中.xpath的使用問(wèn)題,感興趣的朋友一起看看吧
    2021-11-11
  • TensorFlow的環(huán)境配置與安裝方法

    TensorFlow的環(huán)境配置與安裝方法

    這篇文章主要介紹了TensorFlow的環(huán)境配置與安裝方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02
  • macbook如何徹底刪除python的實(shí)現(xiàn)方法

    macbook如何徹底刪除python的實(shí)現(xiàn)方法

    本文主要介紹了macbook如何徹底刪除python的實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • Python3 能振興 Python的原因分析

    Python3 能振興 Python的原因分析

    我從Stephen A. Goss那讀到關(guān)于了《Python 3正在毀滅Python》。這篇文章有不少精彩的論點(diǎn),但我卻并不認(rèn)為Python 3是在毀滅Python,也不認(rèn)為整個(gè)局面對(duì)Python一點(diǎn)也不利
    2014-11-11
  • LyScript實(shí)現(xiàn)內(nèi)存交換與差異對(duì)比的方法詳解

    LyScript實(shí)現(xiàn)內(nèi)存交換與差異對(duì)比的方法詳解

    LyScript?針對(duì)內(nèi)存讀寫(xiě)函數(shù)的封裝功能并不多,只提供了內(nèi)存讀取和內(nèi)存寫(xiě)入函數(shù)的封裝,本篇文章將繼續(xù)對(duì)API進(jìn)行封裝,實(shí)現(xiàn)一些在軟件逆向分析中非常實(shí)用的功能,需要的可以參考一下
    2022-08-08
  • python圖像填充與裁剪/resize的實(shí)現(xiàn)代碼

    python圖像填充與裁剪/resize的實(shí)現(xiàn)代碼

    這篇文章主要介紹了python圖像填充與裁剪/resize,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-08-08

最新評(píng)論