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

Python利用Turtle庫繪制一顆櫻花樹

 更新時(shí)間:2022年04月20日 08:34:50   作者:Python?集中營  
后唐李煜曾說道,櫻花落盡春將困,秋千架下歸時(shí)。漏暗斜月遲遲,花在枝。櫻花落盡的時(shí)候春天也將過去了,秋千架下歸去時(shí)。天上的斜月姍姍來遲,花還在枝頭。本文將用Python+Turtle繪制一顆櫻花樹,感興趣的可以嘗試一下

后唐李煜曾說道,櫻花落盡春將困,秋千架下歸時(shí)。漏暗斜月遲遲,花在枝。櫻花落盡的時(shí)候春天也將過去了,秋千架下歸去時(shí)。天上的斜月姍姍來遲,花還在枝頭。

file

關(guān)于python畫圖相關(guān)的,我們一直使用的是turtle來畫,用專業(yè)的非標(biāo)準(zhǔn)庫來做專業(yè)的事兒。將需要使用到的內(nèi)置庫或者非標(biāo)準(zhǔn)庫全部都導(dǎo)入到當(dāng)前的代碼塊中。

from time import sleep  # 用于控制程序運(yùn)行時(shí)的阻塞停頓
from turtle import *  # 繪圖相關(guān)接口
import random  # 生成隨機(jī)數(shù)

設(shè)置全局需要初始化的對象,以及相關(guān)的全局參數(shù)設(shè)置,這樣就不用在后面每畫一筆進(jìn)行設(shè)置了。

但是畫布上面有一個(gè)箭頭一直無法消除,有知道的大佬煩請留言說一下解決辦法,感激不盡!

tle = Turtle()  # 初始化小烏龜畫筆對象
tle.hideturtle()  # 全局隱藏畫筆
tle.clear()  # 清除屏幕
tle.speed(0)  # 設(shè)置畫筆速度為0,也就是最快的畫筆速度
scr = Screen()  # 初始化屏幕對象
getscreen().tracer(30, 0)  # 返回一個(gè)TurtleScreen類的繪圖對象,并開啟繪畫,加速繪畫過程
scr.screensize(bg='white')  # 設(shè)置背景顏色

開始繪制,設(shè)置開始時(shí)的畫筆相關(guān)的屬性或參數(shù)。

tle.left(90)
tle.up()
tle.backward(150)
tle.down()
tle.color('sienna')

接下來是編寫兩個(gè)函數(shù),一個(gè)是用于生成樹枝/樹干并在對應(yīng)的樹枝旁邊畫上櫻花。另一個(gè)則是在櫻花樹的地上鋪滿掉落的櫻花,這樣的思路來源于CSDN博客平臺,向大佬遞茶!

編寫畫櫻花樹的樹枝/樹干部分/樹枝櫻花的函數(shù)draw_branch_flower。

def draw_branch_flower(len):
    '''
    繪制樹枝/花函數(shù)
    :param len: 樹枝長度
    :return:
    '''
    sleep(0.0005)
    if len > 3:
        if 8 <= len <= 12:
            if random.randint(0, 2) == 0:
                tle.color('snow')
            else:
                tle.color('lightcoral')
            tle.pensize(len / 3)
        elif len < 8:
            if random.randint(0, 1) == 0:
                tle.color('snow')
            else:
                tle.color('lightcoral')
            tle.pensize(len / 2)
        else:
            tle.color('sienna')
            tle.pensize(len / 10)
        tle.forward(len)
        a = 1.5 * random.random()
        tle.right(20 * a)
        b = 1.5 * random.random()
        draw_branch_flower(len - 10 * b)
        tle.left(40 * a)
        draw_branch_flower(len - 10 * b)
        tle.right(20 * a)
        tle.up()
        tle.backward(len)
        tle.down()

編寫畫櫻花樹旁邊的地上的花瓣函數(shù)draw_ground_flower。

def draw_ground_flower(flower_num):
    '''
    繪制地上掉落的花瓣
    :param flower_num: 花瓣數(shù)量
    :return:
    '''
    for i in range(flower_num):
        a = 200 - 400 * random.random()
        b = 10 - 20 * random.random()
        tle.up()
        tle.forward(b)
        tle.left(90)
        tle.forward(a)
        tle.down()
        tle.color('lightcoral')
        tle.circle(1)
        tle.up()
        tle.backward(a)
        tle.right(90)
        tle.backward(b)

調(diào)用櫻花樹相關(guān)的繪圖函數(shù),快速完成繪圖過程。

draw_branch_flower(60)
draw_ground_flower(200)

使用exitonclick函數(shù)保持在繪畫完成時(shí),窗口不會(huì)直接關(guān)閉。

scr.exitonclick()

file

以上就是櫻花樹的全部繪制過程了。

到此這篇關(guān)于Python利用Turtle庫繪制一顆櫻花樹的文章就介紹到這了,更多相關(guān)Python Turtle櫻花樹內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python對url格式解析的方法

    python對url格式解析的方法

    這篇文章主要介紹了python對url格式解析的方法,涉及Python針對URL解析的相關(guān)技巧,需要的朋友可以參考下
    2015-05-05
  • python使用post提交數(shù)據(jù)到遠(yuǎn)程url的方法

    python使用post提交數(shù)據(jù)到遠(yuǎn)程url的方法

    這篇文章主要介紹了python使用post提交數(shù)據(jù)到遠(yuǎn)程url的方法,涉及Python使用post傳遞數(shù)據(jù)的相關(guān)技巧,需要的朋友可以參考下
    2015-04-04
  • python中用Scrapy實(shí)現(xiàn)定時(shí)爬蟲的實(shí)例講解

    python中用Scrapy實(shí)現(xiàn)定時(shí)爬蟲的實(shí)例講解

    在本篇文章里小編給大家整理的是一篇關(guān)于python中用Scrapy實(shí)現(xiàn)定時(shí)爬蟲的實(shí)例講解內(nèi)容,有興趣的朋友們可以學(xué)習(xí)下。
    2021-01-01
  • python Airtest自動(dòng)化測試工具的的使用

    python Airtest自動(dòng)化測試工具的的使用

    本文主要介紹了python Airtest自動(dòng)化測試工具的的使用,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • Python?echarts實(shí)現(xiàn)數(shù)據(jù)可視化實(shí)例詳解

    Python?echarts實(shí)現(xiàn)數(shù)據(jù)可視化實(shí)例詳解

    這篇文章主要為大家詳細(xì)介紹了Python?echarts實(shí)現(xiàn)數(shù)據(jù)可視化,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-03-03
  • Python如何輸出百分比

    Python如何輸出百分比

    這篇文章主要介紹了Python 如何輸出百分比,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • pandas數(shù)據(jù)選?。篸f[] df.loc[] df.iloc[] df.ix[] df.at[] df.iat[]

    pandas數(shù)據(jù)選?。篸f[] df.loc[] df.iloc[] df.ix[] df.at[] df.iat[]

    這篇文章主要介紹了pandas數(shù)據(jù)選?。篸f[] df.loc[] df.iloc[] df.ix[] df.at[] df.iat[],文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • Python裝飾器限制函數(shù)運(yùn)行時(shí)間超時(shí)則退出執(zhí)行

    Python裝飾器限制函數(shù)運(yùn)行時(shí)間超時(shí)則退出執(zhí)行

    今天小編就為大家分享一篇關(guān)于Python裝飾器限制函數(shù)運(yùn)行時(shí)間超時(shí)則退出執(zhí)行,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2019-04-04
  • Numpy數(shù)組array和矩陣matrix轉(zhuǎn)換方法

    Numpy數(shù)組array和矩陣matrix轉(zhuǎn)換方法

    這篇文章主要介紹了Numpy數(shù)組array和矩陣matrix轉(zhuǎn)換方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • python線程池的實(shí)現(xiàn)實(shí)例

    python線程池的實(shí)現(xiàn)實(shí)例

    這篇文章主要介紹了python線程池的實(shí)現(xiàn)方法,代碼簡單實(shí)用,供大家參考使用
    2013-11-11

最新評論