亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Python繪制七彩花朵(用Turtle)

 更新時(shí)間:2023年07月12日 15:03:46   作者:Want595  
這篇文章主要給大家介紹了關(guān)于Python使用Turtle繪制七彩花朵的相關(guān)資料,通過本文介紹的方法就算剛?cè)腴T的朋友也可以很快的入手繪制出漂亮的七彩花朵,需要的朋友可以參考下

前言

來啦來啦來啦,小伙伴們快快來領(lǐng)取七彩花瓣雨吧?。?/p>

小海龜

老生常談啦,在用python畫櫻花樹前,我們先來了解一下turtle吧!

小海龜(Turtle)是Python中畫圖的一個(gè)重要的包(內(nèi)置包),里面包含豐富的畫圖工具以及畫圖的各種功能,當(dāng)你學(xué)會(huì)了用Turtle畫圖后,你可以畫任何你想畫的圖案哦。

1.1 Turtle畫板

Turtle的畫板大小可以用turtle.setup()函數(shù)來設(shè)置

turtle.setup(width,height)

設(shè)置畫板的大小,包含寬和高,width為寬,height為高。

1.2 Turtle畫筆

Turtle的畫筆有幾個(gè)常用的函數(shù):

①turtle.penup():抬起畫筆,此時(shí)移動(dòng)畫筆不會(huì)在畫布上留下痕跡哦
②turtle.pendown():放下畫筆,與turtle.penup相對(duì)應(yīng),放下畫筆后就可以繼續(xù)畫畫了(放下畫筆后畫畫會(huì)在畫布上留下痕跡)
③turtle.pensize():控制畫筆的大?。梢愿鶕?jù)需求自行定義畫筆的大小哦)
④turtle.pencolor():控制畫筆的顏色(可以自己在網(wǎng)上查閱所有python可以使用的顏色,python里面可以用的顏色有很多的哦)
⑤turtle.hideturtle():隱藏畫筆(隱藏畫筆以后畫圖時(shí)畫筆就看不到了)

1.3 Turtle畫圖

在畫圖的過程中,我們經(jīng)常要使用一些簡(jiǎn)單的移動(dòng)函數(shù):

①turtle.forward(x):將畫筆向前移動(dòng)x個(gè)像素(x可以理解為距離)
②turtle.backward(x):將畫筆向后退x個(gè)像素(x可以理解為距離)
③turtle.left(n):將畫筆向左旋轉(zhuǎn)n度
④turtle.right(n):將畫筆向右旋轉(zhuǎn)n度
⑤turtle.speed():設(shè)置畫筆畫圖的速度(1~10遞增,0最快)

1.4 Turtle填色

在畫好圖后,我們經(jīng)常需要對(duì)其進(jìn)行填色,這里可以用turtle.fillcolor()函數(shù),括號(hào)里寫入你想填充的顏色即可。
在使用turtle.fillcolor()函數(shù)要注意其基本格式:

turtle.beginfill()     #開始填充
turtle.fillcolor()      #輸入填充的顏色
turtle.endfill()        #結(jié)束填充

1.5 Turtle寫字

在完成整個(gè)畫圖后,我們可以使用turtle.write()函數(shù)進(jìn)行寫字

turtle.write(" ",move,align,font)

① 第一個(gè)位置雙引號(hào)內(nèi)填入要寫的字
② move(可選):在默認(rèn)情況下,move為false。如果move為true,則筆將移動(dòng)到右下角
③ align(可選):可取值是left即左、center即中、right即右之一,是字符串格式
④ font(可選):字體三元組(fontname、fontsize、fonttype),fontname即字體名稱(字符串格式,如“宋體”),fontsize即字體大?。?,fonttype即字體類型如:normal(普通)、bold(粗體)、italic(斜體)

花朵類

class Flower():    #每個(gè)花朵(花朵類)
    def __init__(self):
        self.r = ra.randint(8,12)        #花朵的半徑
        self.x = ra.randint(-1000,1000)   #花朵的橫坐標(biāo)
        self.y = ra.randint(-500,500)     #花朵的縱坐標(biāo)
        self.f = ra.uniform(-3.14,3.14)   #花朵左右移動(dòng)呈正弦函數(shù)
        self.speed = ra.randint(5,10)     #花朵移動(dòng)速度
        self.color = ra.choice(colors)    #花朵的顏色
        self.outline = 1                  #花朵的外框大小(可不要)

這段代碼是定義了一個(gè)名為Flower的類,該類描述了花朵對(duì)象的屬性和行為。在該類的初始化函數(shù)__init__中,定義了花朵的半徑、橫縱坐標(biāo)、左右移動(dòng)方向、移動(dòng)速度、顏色和外框大小等屬性,并通過產(chǎn)生隨機(jī)數(shù)來賦值。這些屬性可以用于繪制花朵圖像或控制花朵的運(yùn)動(dòng)軌跡。Flower類的定義使得在之后的代碼中可以更方便地創(chuàng)建和操作花朵對(duì)象。 

移動(dòng)函數(shù) 

    def move(self):                    #花朵移動(dòng)函數(shù)
        if self.y >= -500:            #當(dāng)花朵還在畫布中時(shí)
            self.y -= self.speed     #設(shè)置上下移動(dòng)速度
            self.x += self.speed * math.sin(self.f)    #設(shè)置左右移動(dòng)速度
            self.f += 0.1            #可以理解成標(biāo)志,改變左右移動(dòng)的方向
        else:                        #當(dāng)花朵漂出了畫布時(shí),重新生成一個(gè)花朵
            self.r = ra.randint(8,12)
            self.x = ra.randint(-1000,1000)
            self.y = 500
            self.f = ra.uniform(-3.14,3.14)
            self.speed = ra.randint(5,10)
            self.color = ra.choice(colors)
            self.outline = 1

這段代碼定義了一個(gè)move函數(shù),描述花朵對(duì)象的運(yùn)動(dòng)方式。如果花朵仍在畫布中(y >= -500),則花朵會(huì)以設(shè)定的速度(speed)向上移動(dòng),并以設(shè)定的左右移動(dòng)方向(f)左右擺動(dòng)。左右移動(dòng)的方向變化由f值的增加控制(f += 0.1)。如果花朵漂出了畫布,則通過產(chǎn)生隨機(jī)數(shù)重新生成一個(gè)花朵對(duì)象,以保證畫布上始終有花朵。這樣,每個(gè)花朵對(duì)象都具有獨(dú)立的屬性和行為,并且可以在畫布上自由運(yùn)動(dòng)。 

畫花朵 

    def draw(self):       #畫花朵函數(shù),就是用turtle畫花朵
        t.penup()
        t.goto(self.x,self.y)
        t.setheading(self.x)
        t.pendown()
        t.left(36)
        t.color(self.color)
        t.begin_fill()
        t.fillcolor(self.color)
        for i in range(5):
            t.left(-72)
            t.circle(self.r,extent=144)
        t.end_fill()
        #t.right(36)
        #t.begin_fill()
        #t.fillcolor("red")
        #t.color("white")
        #t.circle(12)
        #t.end_fill()

這段代碼是定義了一個(gè)名為draw的函數(shù),使用turtle庫(kù)在畫布上繪制花朵。在該函數(shù)中,首先通過設(shè)置筆的位置和角度,在畫布上定位要繪制的花朵位置。接著,通過設(shè)置畫筆顏色和填充顏色,在花瓣中繪制五角花瓣。其中,通過循環(huán)語(yǔ)句和圓弧函數(shù)circle()實(shí)現(xiàn)了繪制五角花瓣時(shí)的細(xì)節(jié)。最后,通過end_fill()函數(shù)來填充花朵內(nèi)部的顏色。通過調(diào)用這個(gè)函數(shù),每個(gè)花朵都可以在畫布上展現(xiàn)出來,并且顏色、形狀等屬性也隨機(jī)生成。 

尾聲

到此這篇關(guān)于Python繪制七彩花朵的文章就介紹到這了,更多相關(guān)Python七彩花朵內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python scatter函數(shù)用法實(shí)例詳解

    python scatter函數(shù)用法實(shí)例詳解

    這篇文章主要介紹了python scatter函數(shù)用法實(shí)例詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-02-02
  • Python文件打開方式實(shí)例詳解【a、a+、r+、w+區(qū)別】

    Python文件打開方式實(shí)例詳解【a、a+、r+、w+區(qū)別】

    這篇文章主要介紹了Python文件打開方式,結(jié)合實(shí)例形式詳細(xì)分析了Python文件打開函數(shù)的使用及a、a+、r+、w+等屬性功能、使用區(qū)別與相關(guān)操作注意事項(xiàng),需要的朋友可以參考下
    2019-03-03
  • wxPython窗口的繼承機(jī)制實(shí)例分析

    wxPython窗口的繼承機(jī)制實(shí)例分析

    這篇文章主要介紹了wxPython窗口的繼承機(jī)制,較為詳細(xì)的講述了wxPython窗口的繼承機(jī)制及相關(guān)用法,并對(duì)其中的易錯(cuò)點(diǎn)進(jìn)行了簡(jiǎn)單的分析,需要的朋友可以參考下
    2014-09-09
  • Python使用socket模塊實(shí)現(xiàn)簡(jiǎn)單tcp通信

    Python使用socket模塊實(shí)現(xiàn)簡(jiǎn)單tcp通信

    這篇文章主要介紹了Python使用socket模塊實(shí)現(xiàn)簡(jiǎn)單tcp通信,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-08-08
  • pandas增加列的七種方法總結(jié)

    pandas增加列的七種方法總結(jié)

    這篇文章主要為大家詳細(xì)介紹了python中pandas增加列的七種常用方法,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,感興趣的小伙伴可以參考一下
    2023-11-11
  • python如何將圖片轉(zhuǎn)換素描畫

    python如何將圖片轉(zhuǎn)換素描畫

    這篇文章主要介紹了python如何將圖片轉(zhuǎn)換素描畫,幫助大家更好的用python處理圖片,感興趣的朋友可以了解下
    2020-09-09
  • Python數(shù)學(xué)形態(tài)學(xué)實(shí)例分析

    Python數(shù)學(xué)形態(tài)學(xué)實(shí)例分析

    這篇文章主要介紹了Python數(shù)學(xué)形態(tài)學(xué),結(jié)合實(shí)例形式分析了Python數(shù)學(xué)運(yùn)算與圖形繪制相關(guān)操作技巧,需要的朋友可以參考下
    2019-09-09
  • python實(shí)現(xiàn)SOM算法

    python實(shí)現(xiàn)SOM算法

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)SOM算法,聚類算法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-02-02
  • Tensorflow分批量讀取數(shù)據(jù)教程

    Tensorflow分批量讀取數(shù)據(jù)教程

    今天小編就為大家分享一篇Tensorflow分批量讀取數(shù)據(jù)教程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • python協(xié)程庫(kù)asyncio(異步io)問題

    python協(xié)程庫(kù)asyncio(異步io)問題

    這篇文章主要介紹了python協(xié)程庫(kù)asyncio(異步io)問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-11-11

最新評(píng)論