使用Python的turtle模塊畫圖的方法
簡介:turtle是一個簡單的繪圖工具。它提供了一個海龜,你可以把它理解為一個機器人,只聽得懂有限的指令。
1.在文件頭寫上如下行,這能讓我們在語句中插入中文
#-*-coding:utf-8-*-
2.用importturtle導(dǎo)入turtle庫
3.繪圖窗口的原點(0,0)在正中間。默認(rèn)情況下,海龜向正右方移動。
4.操縱海龜繪圖有著許多的命令,這些命令可以劃分為兩種:一種為運動命令,一種為畫筆控制命令
(1)運動命令:
|
forward(d) |
向前移動距離d代表距離 |
|
backward(d) |
向后移動距離d代表距離 |
|
right(degree) |
向右轉(zhuǎn)動多少度 |
|
left(degree) |
向左轉(zhuǎn)動多少度 |
|
goto(x,y) |
將畫筆移動到坐標(biāo)為(x,y)的位置 |
|
stamp() |
繪制當(dāng)前圖形 |
|
speed(speed) |
畫筆繪制的速度范圍[0,10]整數(shù) |
(2)畫筆控制命令:
|
down() |
畫筆落下,移動時繪制圖形 |
|
up() |
畫筆抬起,移動時不繪制圖形 |
|
setheading(degree) |
海龜朝向,degree代表角度 |
|
reset() |
恢復(fù)所有設(shè)置 |
|
pensize(width) |
畫筆的寬度 |
|
pencolor(colorstring) |
畫筆的顏色 |
|
fillcolor(colorstring) |
繪制圖形的填充顏色 |
|
fill(Ture) |
|
|
fill(False) |
|
|
circle(radius, extent) |
繪制一個圓形,其中radius為半徑,extent為度數(shù),例如若extent為180,則畫一個半圓;如要畫一個圓形,可不必寫第二個參數(shù) |
使用Python的turtle(海龜)模塊畫圖
第一步:讓Python引入turtle模塊,引入模塊就是告訴Python你想要用它。
importturtle
第二步:創(chuàng)建畫布。調(diào)用turtle中的Pen函數(shù)。
t=turtle.Pen()

第三步:移動海龜。
t.forward(50)
forward的中文意思是“向前地;促進”。所以這行代碼的意思是海龜向前移動50個像素:

t.left(90)
讓海龜左轉(zhuǎn)90度

現(xiàn)在我們可以嘗試畫一個方塊,思路就是前進-轉(zhuǎn)向90度-前進,循環(huán)四次。
>>> t.forward(50) >>> t.left(90) >>> t.forward(50) >>> t.left(90) >>> t.forward(50) >>> t.left(90) >>> t,forward(50) >>> t.left(90) >>> t,forward(50)
效果如下:

第四步:擦除畫布。
>>>t.reset()
重置命令(reset)這會清除畫布并把海龜放回開始的位置。
>>>t.clear()
清除命令(clear)只清除屏幕,海龜仍停留在原位。
我們還可以讓海龜向右(right)轉(zhuǎn),或者讓它后退(backward)。我們可以用向上(up)來把筆從紙上抬起來(換句話說就是讓海龜停止作畫),用向下(down)來開始作畫。
下面我們綜合運用一下,畫兩條線。
>>> t.reset() //擦除畫布并把海龜移回到開始位置 >>> t.backward(100) //后退100個像素 >>> t.up() // 抬筆不再作畫 >>> t.right(90) //向右轉(zhuǎn)90度 >>> t.forward(20) //前進20個像素 >>> t.left(90) //向左轉(zhuǎn)90度 >>> t.down() //下筆準(zhǔn)備作畫 >>> t.forward(100) //前進100個像素
效果如下:

總結(jié)
剛開始學(xué)用turtle模塊作畫,感覺就像小學(xué)剛開始作畫一樣。從前是拿起筆直接在紙上畫,到現(xiàn)在使用Python作畫時,感覺是把從前作畫的動作分解開:準(zhǔn)備畫布——拿起筆準(zhǔn)備作畫——開始作畫——放下筆不再作畫。感覺很有趣,慢慢來,這才只是剛開始。
以上就是本文關(guān)于使用Python的turtle模塊畫圖的方法的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站:
如有不足之處,歡迎留言指出。
相關(guān)文章
python 操作mysql數(shù)據(jù)中fetchone()和fetchall()方式
這篇文章主要介紹了python 操作mysql數(shù)據(jù)中fetchone()和fetchall()方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-05-05
Pytorch平均池化nn.AvgPool2d()使用方法實例
平均池化層,又叫平均匯聚層,下面這篇文章主要給大家介紹了關(guān)于Pytorch平均池化nn.AvgPool2d()使用方法的相關(guān)資料,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-02-02
tensorflow之tf.record實現(xiàn)存浮點數(shù)數(shù)組
今天小編就為大家分享一篇tensorflow之tf.record實現(xiàn)存浮點數(shù)數(shù)組,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-02-02
python面向?qū)ο缶幊淘O(shè)計原則之單一職責(zé)原則詳解
這篇文章主要為大家詳細(xì)介紹了python面向?qū)ο缶幊淘O(shè)計原則之單一職責(zé)原則,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助2022-03-03
Python作用域(局部?全局)及global關(guān)鍵字使用詳解
這篇文章主要為大家介紹了Python作用域(局部?全局)及global關(guān)鍵字使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-10-10

