這篇文章給大家介紹turtle庫的安裝以及原理分析是怎樣的,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
站在用戶的角度思考問題,與客戶深入溝通,找到湖口網(wǎng)站設(shè)計與湖口網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:成都做網(wǎng)站、網(wǎng)站設(shè)計、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣、空間域名、虛擬主機、企業(yè)郵箱。業(yè)務(wù)覆蓋湖口地區(qū)。
turtle庫是Python中一個很流行的繪圖函數(shù)庫,主要是依據(jù)坐標(biāo)軸來繪制圖像,畫筆則是一只小海龜,通過控制海龜?shù)脑谧鴺?biāo)平面的移動,從而繪制各種各樣的圖像。
pip install turtle
turtle中的畫布就是用于繪畫的區(qū)域,我們可以設(shè)置它的大小和初始位置。
常用的畫布方法:
screensize()方法
語法:turtle.screensize(canvwidth=None, canvheight=None, bg=None) canvwidth -- 寬 canvheight -- 高 bg -- 背景顏色
import turtle, time turtle.screensize(800, 600, "green") turtle.screensize() #返回默認(rèn)大小(400, 300) time.sleep(3)
setup()方法
語法:turtle.setup(width=0.5, height=0.75, startx=None, starty=None) width、height -- 輸入寬和高為整數(shù)時, 表示像素。為小數(shù)時, 表示占據(jù)電腦屏幕的比例 startx、starty -- 這一坐標(biāo)表示 矩形窗口左上角頂點的位置,如果為空,則窗口位于屏幕中心
import turtle, time turtle.screensize(800, 600, "green") turtle.screensize() #返回默認(rèn)大小(400, 300) time.sleep(3)
畫筆有顏色、畫線的寬度等屬性:
turtle.pensize()
:設(shè)置畫筆的寬度;
turtle.pencolor()
:沒有參數(shù)傳入返回當(dāng)前畫筆顏色。傳入?yún)?shù)設(shè)置畫筆顏色,可以是字符串如”red”、”blue”,也可以是RGB 3元組。
turtle.speed()
:設(shè)置畫筆移動速度,畫筆繪制的速度范圍[0,10]整數(shù),數(shù)字越大越快。
操縱海龜繪圖有多種命令,這些命令可以分為3中,分別是:畫筆運動命令、畫筆控制命令和全局控制命令。
命令 | 說明 |
---|---|
turtle.forward(distance) | 向當(dāng)前畫筆方向移動distance像素長 |
turtle.backward(distance) | 向當(dāng)前畫筆相反方向移動distance像素長度 |
turtle.right(degree) | 順時針移動degree° |
turtle.left(degree) | 逆時針移動degree° |
turtle.pendown() | 移動時繪制圖形,缺省時也為繪制 |
turtle.goto(x,y) | 將畫筆移動到坐標(biāo)為x,y的位置 |
turtle.penup() | 移動時不繪制圖形,提起筆,用于另起一個地方繪制時用 |
turtle.speed(speed) | 畫筆繪制的速度范圍[0,10]整數(shù) |
turtle.circle() | 畫圓,半徑為正(負(fù)),表示圓心在畫筆的左邊(右邊)畫圓 |
命令 | 說明 |
---|---|
turtle.pensize(width) | 繪制圖形時的寬度 |
turtle.pencolor() | 畫筆顏色 |
turtle.fillcolor(colorstring) | 繪制圖形的填充顏色 |
turtle.color(color1, color2) | 同時設(shè)置pencolor=color1, fillcolor=color2 |
turtle.filling() | 返回當(dāng)前是否在填充狀態(tài) |
turtle.begin_fill() | 準(zhǔn)備開始填充圖形 |
turtle.end_fill() | 填充完成 |
turtle.hideturtle() | 隱藏箭頭顯示; |
turtle.showturtle() | 與hideturtle()函數(shù)對應(yīng) |
命令 | 說明 |
---|---|
turtle.clear() | 清空turtle窗口,但是turtle的位置和狀態(tài)不會改變 |
turtle.reset() | 清空窗口,重置turtle狀態(tài)為起始狀態(tài) |
turtle.undo() | 撤銷上一個turtle動作 |
turtle.isvisible() | 返回當(dāng)前turtle是否可見 |
stamp() | 復(fù)制當(dāng)前圖形 |
turtle.write(s[,font=(“font-name”,font_size,”font_type”)]) | 寫文本,s為文本內(nèi)容,font是字體的參數(shù),里面分別為字體名稱,大小和類型;font為可選項, font的參數(shù)也是可選項 |
繪制一個五角星
import turtle import time turtle.setup(1500, 1400, 0, 0) turtle.pensize(5) turtle.pencolor("pink") turtle.fillcolor("red") turtle.begin_fill() for _ in range(5): turtle.forward(400) turtle.right(144) turtle.end_fill() time.sleep(5)
之前看到一個實例,可以繪制出一棵好看的櫻花樹,有興趣的可以看一下呀
鏈接:
https://blog.csdn.net/z564359805/article/details/85861481#commentBox
具體代碼如下:
#!/usr/bin/env python # coding=utf-8 # 畫一棵櫻花 import turtle import random from turtle import * from time import sleep # 畫櫻花的軀干(60,t) def tree(branchLen, t): sleep(0.0005) if branchLen > 3: if 8 <= branchLen <= 12: if random.randint(0, 2) == 0: t.color('snow') # 白 else: t.color('lightcoral') # 淡珊瑚色 t.pensize(branchLen / 3) elif branchLen < 8: if random.randint(0, 1) == 0: t.color('snow') else: t.color('lightcoral') # 淡珊瑚色 t.pensize(branchLen / 2) else: t.color('sienna') # 赭(zhě)色 t.pensize(branchLen / 10) # 6 t.forward(branchLen) a = 1.5 * random.random() t.right(20 * a) b = 1.5 * random.random() tree(branchLen - 10 * b, t) t.left(40 * a) tree(branchLen - 10 * b, t) t.right(20 * a) t.up() t.backward(branchLen) t.down() # 掉落的花瓣 def petal(m, t): for i in range(m): a = 200 - 400 * random.random() b = 10 - 20 * random.random() t.up() t.forward(b) t.left(90) t.forward(a) t.down() t.color('lightcoral') # 淡珊瑚色 t.circle(1) t.up() t.backward(a) t.right(90) t.backward(b) def main(): # 繪圖區(qū)域 t = turtle.Turtle() # 畫布大小 w = turtle.Screen() t.hideturtle() # 隱藏畫筆 getscreen().tracer(5, 0) w.screensize(bg='wheat') # wheat小麥 t.left(90) t.up() t.backward(150) t.down() t.color('sienna') # 畫櫻花的軀干 tree(60, t) # 掉落的花瓣 petal(200, t) w.exitonclick() main()
關(guān)于turtle庫的安裝以及原理分析是怎樣的就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
網(wǎng)站名稱:turtle庫的安裝以及原理分析是怎樣的
標(biāo)題URL:http://aaarwkj.com/article30/pdispo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁設(shè)計公司、手機網(wǎng)站建設(shè)、、網(wǎng)站改版、網(wǎng)站設(shè)計、虛擬主機
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)