Python使用Turtle庫(kù)繪制一棵西蘭花
Turtle庫(kù)是Python中一個(gè)強(qiáng)大的繪制圖像的函數(shù)庫(kù),靈活使用Turtle庫(kù)可以繪制各種好看的圖像。
下面介紹使用Turtle庫(kù)繪制一棵西蘭花。
繪制一棵西蘭花,從主干出發(fā)以一定的角度向左向右生成對(duì)稱的枝干,再?gòu)拿總€(gè)枝干出發(fā)向左向右生成對(duì)稱的枝干,循環(huán)此動(dòng)作,并最終繪制出一棵漂亮的西蘭花。
首先導(dǎo)入Turtle庫(kù),并設(shè)置畫筆大小、畫筆速度及顏色,并隱藏畫筆
from turtle import Turtle p=Turtle() p.pensize(5) p.color(clr) p.hideturtle() p.getscreen().tracer(30,0)
設(shè)置起始方向以及位置(屏幕中心為坐標(biāo)原點(diǎn))
p.left(90) p.penup() p.goto(x,y) p.pendown()
設(shè)置畫筆完成之后,開始繪制西蘭花,首先繪制從開始畫位置向著預(yù)定的方向前進(jìn)一段距離,并向左向右分成兩個(gè)對(duì)稱的分支
p.forward(l) q=p.clone() p.left(a) q.right(a)
每完成一次分支后就將兩個(gè)分支對(duì)象添加到list中,并通過遍歷list完成整個(gè)圖像的繪制
def tree(plist,l,a,f):
if l>5:
lst=[]
for p in plist:
p.forward(l)
q=p.clone()
p.left(a)
q.right(a)
lst.append(p)
lst.append(q)
tree(lst,l*f,a,f)
在程序中通過遞歸調(diào)用完成了一棵西蘭花的繪制。
程序剩余代碼如下:
def maketree(x,y,clr): p=Turtle() p.pensize(5) p.color(clr) p.hideturtle() p.getscreen().tracer(30,0) #p.speed(10) p.left(90) p.penup() p.goto(x,y) p.pendown() t=tree([p],200,20,0.6375) #print(len(p.getscreen().turtles())) def main(): maketree(0,-300,"green") main()
以上這篇Python使用Turtle庫(kù)繪制一棵西蘭花就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- 基于Python-turtle庫(kù)繪制路飛的草帽骷髏旗、美國(guó)隊(duì)長(zhǎng)的盾牌、高達(dá)的源碼
- Python turtle庫(kù)的畫筆控制說明
- 使用python圖形模塊turtle庫(kù)繪制櫻花、玫瑰、圣誕樹代碼實(shí)例
- python使用turtle庫(kù)繪制奧運(yùn)五環(huán)
- 通過Turtle庫(kù)在Python中繪制一個(gè)鼠年福鼠
- 使用Python的Turtle庫(kù)繪制森林的實(shí)例
- Python turtle庫(kù)繪制菱形的3種方式小結(jié)
- 利用Python的turtle庫(kù)繪制玫瑰教程
- python turtle庫(kù)畫一個(gè)方格和圓實(shí)例
- python的turtle庫(kù)使用詳解
- Python趣味挑戰(zhàn)之turtle庫(kù)繪畫飄落的銀杏樹
相關(guān)文章
python通過getopt模塊如何獲取執(zhí)行的命令參數(shù)詳解
這篇文章主要給大家介紹了關(guān)于python通過getopt模塊如何獲取執(zhí)行的命令參數(shù)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2017-12-12
jupyter運(yùn)行時(shí)左邊一直出現(xiàn)*號(hào)問題及解決
這篇文章主要介紹了jupyter運(yùn)行時(shí)左邊一直出現(xiàn)*號(hào)問題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-09-09
安裝Pycharm2019以及配置anconda教程的方法步驟
這篇文章主要介紹了安裝Pycharm2019以及配置anconda教程的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11
Python實(shí)現(xiàn)判斷一個(gè)整數(shù)是否為回文數(shù)算法示例
這篇文章主要介紹了Python實(shí)現(xiàn)判斷一個(gè)整數(shù)是否為回文數(shù)算法,結(jié)合實(shí)例形式分析了Python針對(duì)字符串的翻轉(zhuǎn)、判斷等相關(guān)操作技巧,需要的朋友可以參考下2019-03-03
教你用YOLOv5實(shí)現(xiàn)多路攝像頭實(shí)時(shí)目標(biāo)檢測(cè)功能
目標(biāo)檢測(cè)是計(jì)算機(jī)視覺的研究方向之一,下面這篇文章主要給大家介紹了關(guān)于如何利用YOLOv5實(shí)現(xiàn)多路攝像頭實(shí)時(shí)目標(biāo)檢測(cè)功能的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-03-03
Python實(shí)現(xiàn)爬取馬云的微博功能示例
這篇文章主要介紹了Python實(shí)現(xiàn)爬取馬云的微博功能,結(jié)合實(shí)例形式較為詳細(xì)的分析了Python模擬ajax請(qǐng)求爬取馬云微博的相關(guān)操作技巧與注意事項(xiàng),需要的朋友可以參考下2019-02-02
Python中如何實(shí)現(xiàn)MOOC掃碼登錄
這篇文章主要介紹了Python中如何實(shí)現(xiàn)MOOC掃碼登錄,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-01-01
python中sql解析庫(kù)sqlparse基本操作指南
sqlparse是用于Python的非驗(yàn)證SQL解析器,它提供了對(duì)SQL語(yǔ)句的解析,拆分和格式化的支持,這篇文章主要給大家介紹了關(guān)于python中sql解析庫(kù)sqlparse基本操作指南的相關(guān)資料,需要的朋友可以參考下2024-08-08

