1. 程式人生 > >Python,菜鳥成長之路,Turtle庫

Python,菜鳥成長之路,Turtle庫

turtle庫的基本介紹

turtle庫概述

  • turtle(海龜)庫是turtle繪圖體系的python實現
  1.  turtle繪圖體系:1969年誕生,主要用於程式設計入門的一種繪圖方式,是python語言標準庫之一,入門級的圖形繪製函式庫。
  2. 標準庫:Python計算生態 = 標準庫 + 第三方庫,隨直譯器直接安裝到作業系統中的功能模組
  3.  第三方庫:需要經過安裝才能使用的功能模組
  4. 庫Library、包Package、模組Module,統稱模組(暫定)

turtle的原理(理解)

  1. 把turtle(海龜)當做是一種真實的存在
  2. 有一隻海龜,其實在窗體正中心,在畫布上游走,走過的軌跡形成了繪製的圖形,海龜由程式控制,可以變換顏色、改變寬度等

turtle繪圖窗體佈局

  1.  turtle的繪圖窗體 
  2. setup()設定窗體大小及位置,turtle.setup(width,height,startx,starty), 四個引數中後兩個可選
  3. setup()函式不是必須的,當你需要控制窗體的大小和螢幕顯示的位置的時候使用
  4. 如turtle.setup(800,800,0,0)位於螢幕的左上角,turtle.setup(800,800)位於螢幕的正中心

turtle空間座標體系

  1.  絕對座標:當做那個海龜在正中心,為(0,0,)turtle.goto(x,y):任意位置的海龜到達某一個位置:
  2. 海龜座標:對於海龜的當前行進方向無論朝向哪個方向都叫做前進方向,反方向是後退方向,海龜執行的左側叫左側方向,執行的右側叫做右側方向

turtle.circle(r,angle)拐彎  ,第一個引數是方向,第二個引數是角度

 turtle.fd(d)前進    

turtle.bk(d)後退  

d是表示distance,前進的距離,可為負數

turtle角度座標體系

  1. 絕對角度 turtle.seth(angle),只改變執行方向
  2. 海龜角度

turtle.left(angle)向左

turtle.right(angle)向右

RGB色彩體系

  1. RGB色彩模式,由三種顏色構成的萬物色   
  •   RGB指紅綠藍三個通道的顏色組合,覆蓋視力所能感知的所有顏色 RGB沒色取值範圍0-255整數或0-1小數
  1. 常用RGB色彩
英文名RGB整數值RGB小數值中文名稱
white255,255,2551,1,1白色
yellow255,255,01,1,0黃色
megenta255,0,2551,0,1洋紅
cyan0,255,2550,1,1青色
blue0,0,2550,0,1藍色
black0,0,00,0,0黑色
seashell255,245,2381,0.96,0.93海貝色
gold255,215,01,0.84,0金色
pink255,192,2031,0.75,0.80粉紅色
brown165,42,420.65,0.16,0.16棕色
purple160,32,2400.63,0.12,0.94紫色
tomato255,99,711,0.39,0.28番茄色


l  turtle.colormode(mode)來改變顏色

l  預設採用小數值,可以切換為整數值

l  1,0:RGB小數值模式

l  255:RGB整數值模式

turtle畫筆控制函式

  1. turtle.penup() ,別名turtle.pu() ,擡起畫筆
  2. turtle.pendown(), 別名 turtle.pd(),落下畫筆
  3. pensize() 畫筆的寬度,畫筆設定後一直有效,直至下次重新設定  turtle.pensize(width) 別名 turtle.width(width)
  4. pencolor(color) 修改畫筆顏色的函式,color 為顏色字串或r,g,b值
  5. color引數有三種形式

            顏色字串:turtle.pencolor(“purple”)

            RGB的小數值:turtle.pencolor(0.63,0.13,0.93)

            RGB的元組值:turtle.pencolor((0.63,0.13,0.94))

turtle運動控制函式

  1. fd()、circle(),控制海龜行進:走直線&走曲線
  2. turtle.forward(d) 別名turtle.fd(d),向前行進
  3. d表示行進距離,單位是畫素,為負數時倒著走
  4. turtle.circle(r,extent=None),根據半徑r繪製extent角度的弧形, r:預設圓心在海龜左側r距離的位置,extent:繪製角度,預設是360度整圓

turtle方向控制函式

  1. turtle.setheading(angle) 別名 turtle.seth(angle),控制海龜面對方向:絕對角度&海龜角度,改變行進方向,海龜走的角度angle: 改變行進方向,海龜的角度
  2. turtle.left(angle) 海龜向左轉
  3. turtle.right(angle) 海龜向右轉
  4. angle:在海龜當前行進方向旋轉的角度,只改變行進方向

相關推薦

Python,成長,Turtle

turtle庫的基本介紹turtle庫概述turtle(海龜)庫是turtle繪圖體系的python實現 turtle繪圖體系:1969年誕生,主要用於程式設計入門的一種繪圖方式,是python語言標準庫之一,入門級的圖形繪製函式庫。標準庫:Python計算生態 = 標準庫

成長Thread的SetDeamon()守護執行緒原始碼分析(4)

    相信大家的童年都有過《西遊記》的陪伴,唐僧四人一起去西天取經的故事肯定也是耳熟能詳,在西遊記裡唐僧作為整個取經隊伍的領導者,而徒弟們跟隨師傅指引的方向去前進,這裡我們可以把取經當成是Thread執行的終點,師傅作為被守護執行緒,徒弟作為守護執行緒,當取完經後或者師

成長Thread的setPriority()設定優先順序原始碼分析(5)

我們知道執行緒在執行start()之後,如果沒有cpu執行權的話,它是在runnable狀態,而不會進入到running狀態或者exception狀態,而且各個執行緒執行的結果次數也有可能不會是一樣的,這體現了多執行緒的不確定性,那麼我們可以通過設定優先順序來讓執行緒執行

成長Thread的join()原始碼分析(5)

有些業務要求我們當所有執行緒任務執行完後,做下記錄或者是做別的事,那麼我們在Thread裡面是應該怎麼實現呢? 今天我們來看Thread的join(); public final void join(long millis)     等待該執行緒終止的時間最長為 mi

Linux起飛【二】Linux基本常識

copy 聯合 das 安裝第三方 所有組 以及 改進 伯克利 版本 一、Unix操作系統基本常識 1.什麽是Unix? Unix是一個計算機操作系統,是一個用來協調、管理和控制計算機硬件與軟件資源的控制程序。 2.Unix操作系統的特點? 多用戶與多任務。多用戶表示在同一

Linux起飛【七】文件合並、歸檔和壓縮

div 結果 執行 img src gzip 圖片 com .com 一、文件合並操作 1.覆蓋符號與追加符號 a)“>”代表將左邊文件的內容覆蓋右邊文件的內容,如果右邊文件不存在則創建這個文件 b)“>>”代表將左邊文件的內容追加到右邊文件中,如果右邊文

【linux--學習】fread和fwrite

fread 函式名: fread 功  能: 從一個流中讀資料 用  法: int fread(void *ptr, int size, int nitems, FILE *stream); 參  數:用於接收資料的地址(ptr)          單個元素的大小(siz

成長Storm學習總結

有一個星期沒有更新啦,說明是好事,至少開始做專案了,把所有的知識點放在專案上,果然會讓人成長的更快;專案的隱私度比較高就不公開了~ 今天總結一下新的內容,學習都有一個過程:從菜鳥到鳥人到大神;所以fighting就對了! 1.離線計算是什麼? 離線

Android提升---BAT大廠的面試題(Android+Java)

首先宣告 :發此部落格是因為在後續我會學習這些面試用到的題目,一為了方便自己以後找工作複習方便,二也可以方便大家一起學習,這些面試題是我從鴻洋的部落格中轉載來!java面試題熟練掌握java是很關鍵的,大公司不僅僅要求你會使用幾個api,更多的是要你熟悉原始碼實現原理,甚至要

XRMelo的起飛

切正題 我們都知道在使用alertView actionSheet等系統控制元件,他們的共同的特性就是會有一層灰色的view遮蓋了與當前頁面的互動.並且點選控制元件以外的灰色區域,會回到之前的頁面.

ASP.NET MVC4 專案(一)改造示例程式碼擴充套件使用者資訊管理

模板建立示例專案 MVC的基礎內容我就不說了,入門建議看看官方的MvcMovie示例。       開啟VS2012,【新建專案】,選擇【ASP.NET MVC 4 Web應用程式】,名稱叫MyMvc(這隨便取,但常規是公司.專案的名稱空間),按【確定】,模板選【I

嵌入式Linux學習

1.裝置驅動的作用 計算機系統由硬體、軟體組成,而對於實際開發來說,硬、軟體間耦合性應儘量低,即應用開發工程師不需關心 硬體,而硬體開發工程師無暇顧及軟體。為了降低硬、軟耦合性,產生了裝置驅動工程師。 2.作業系統驅動設計架構 在無作業系統時,硬體工

一只成長

小強測試品牌 性能測試 軟件測試瘋狂講義 轉型測試 引子以下內容選自《小強軟件測試瘋狂講義》一書正文 簡單地自我介紹,就是一只數學專業,腦洞極大,深度強迫癥,編程菜鳥,顏控,但人醜的少女。 我的願望很簡單,一輩子隨遇而安家庭幸福,但希望能一直堅持努力成為有技術含量的妹紙。什麽叫做“

程式設計師的成長(五)——說說2015年,暢談一下2016年

時間從不等人,一晃半年多的時間沒有寫博文了,實在慚愧。今天特別的清閒,簡單的說一說2015,暢談一下2016。 2015年上半年一直瘋狂的寫程式碼,做專案,雖然當時每天感覺有點累,但是每天都有新的收穫和進步,每一步都很踏實。從15年6月份開始出來工作,在國企單

成長

在閻巨集博士的《JAVA與模式》一書中開頭是這樣描述享元(Flyweight)模式的:   Flyweight在拳擊比賽中指最輕量級,即“蠅量級”或“雨量級”,這裡選擇使用“享元模式”的意譯,是因為這樣更能反映模式的用意。享元模式是物件的結構模式。享元模式以共享的方式高效地

後端成長:從到架構

有不少初學者問到,我想學習後端,但是又不知道該怎麼學,所以我決定把這幾年的經驗和經歷整理成一篇文章,分析後端的路該怎麼走,先說明下面僅僅是個人心得,也許與外面的理論有所不同。(文章最後面會附上學習路線地圖和一些自己看過的書籍) 後端任務其實是實現接收輸入響應輸出 後端初接觸 後端首先需要學習的是html

成長——ubuntu的聯網

  我們現在開始學習linux系統中的ubuntu系統,在這節課開始前,我們需要做這個幾個事情。首先,現在合適版本的VMware,然後再下載最新版本的ubuntu映象檔案,然後就在VMware中安裝ub

程式設計師的成長(二)——時間都去哪兒了

距離我的上篇部落格菜鳥程式設計師的成長之路(一)已經過去六個月的時間,又到了總結收穫的季節。在漫長的六個月裡,發生的了很多的事。殘存在大腦中的記憶(不是腦殘),已經不能將我帶回到去年的九月份,想問自己一句:時間都去哪兒了? 翻閱點點滴滴的筆記回憶這六個月,一切又都歷歷在目。通過時間軸,請您跟我一起回憶過去的

今天算是開博的第一天,希望能記錄我成長

RT 就在昨天我滿懷希望的將opencv完成了最佳配置,同時工作站也完成了新系統的安裝,期間遇到了幾個問題,超過2TB後系統不支援MBR,只能用guide的方式,但是guide卻又不能完美的支援win7,忍痛割愛,留下1.6TB未能識別,哪位大俠知道解決辦法,希望留言告知。

java開發的成長--剛入公司篇

原諒我第一天的錯誤示範,儘管我發現自己做不出東西,多多少少對於一個迫於在職場,在技術領域想要的做些追求的青年來講有些許的打擊。但是我發現自己用於向老員工請教是一個非常的好的辦法,一旦出現自己無法分析的技術性問題,我就會主動的去尋求老員工的幫助和支援。當我的一次次的看著老員工給我把眼前的技術解決的時候,才知道,