Python turtle.right與turtle.setheading的區別


一、概念

  turtle.right與turtle.left用法一致,我們以turtle.right為例進行講述。

  turtle.right(angle)向右旋轉angle角度。

  turtle.setheading(angle)設置當前朝向為angle角度。

二、舉例

  從概念上並不能准確的得知他們有怎樣的區別,那我們以三角形為例,看看他們究竟有什么不同。

 

  運行此代碼。

  將turtle.setheading換成turtle.right

  運行后:

  為什么會這樣呢,從概念上我們也只是得知可以將小烏龜旋轉一個角度,那么究竟是怎樣旋轉的呢?

三、區別

  turtle.setheading(angle)在旋轉一個角度后(angle為正,逆時針旋轉,angle為負,順時針旋轉),執行turtle.fd(distance)后,小烏龜的方向恢復到正X方向,即東(east)

   i=0,angle為0,向前畫200px直線,i=1,angle為120°逆時針旋轉這個角度,沿此方向向前畫200px直線后,小烏龜恢復到正X方向,i=2,angle為240°逆時針旋轉這個角度,沿此方向向前畫200px直線后,小烏龜恢復到正X方向

  但當我們使用turtle.right(angle)后,就不是如此了,

   i=0,angle為0,沿X正方向畫200px直線,i=1,angle為120,沿此角度畫200px直線后,小烏龜的方向不發生改變,仍為轉變角度后的方向,i=2,angle為240,沿此角度畫200px直線。

  即turtle.right旋轉angle后,對其進行操作后,小烏龜的方向不發生改變,turtle.setheading旋轉angle后,對其進行操作后,小烏龜的方向發生改變,為X軸正方向。

四、turtle文檔鏈接

  Python官方文檔:https://docs.python.org/3/library/turtle.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM