1. python彩色蟒蛇代碼
Python中有一個繪圖庫叫turtle我們先引入它。importturtle(python用import或者from...import來導入相應的模塊,它類似於C中的include頭文件橡拍import的具體用法請參考https://blog.csdn.net/Greenovia/article/details/79399475)而turtle是一個繪圖庫在這里我僅介紹幾個常用的函數
urtle.setup(a,b,c,d)a,b兩個參數分別控制畫布的寬和高,c,d屬性控制畫布的位置;turtle.screesize(a,b,c)a,b控制畫布的寬和高,C控制畫布的顏色;例如:turtle.setup(800,400,200,200)//創建一個寬為800像素高為400像素,坐標為(200,200)的畫布梁肆羨turtle.screensize(800,400,'green')//創建一個寬為800像素,高為400像素,顏色為綠色的雹派畫布
2. python是什麼
python 中文就是蟒蛇的意思。
在計算機中,它是一種編程語言。
Python(英語發音:/ˈpaɪθən/), 是一種面向對象、解釋型計算機程序設計語言,由Guido van Rossum於1989年底發明,第一個公開發行版發行於1991年。Python語法簡潔而清晰,具有豐富和強大的類庫。它常被昵稱為膠水語言,它能夠把用其他語言製作的各種模塊(尤其是C/C++)很輕松地聯結在一起。常見的一種應用情形是,使用Python快速生成程序的原型(有時甚至是程序的最終界面),然後對其中有特別要求的部分,用更合適的語言改寫,比如3D游戲中的圖形渲染模塊,性能要求特別高,就可以用C++重寫。
1發展歷程編輯
自從20世紀90年代初Python語言誕生至今,它逐漸被廣泛應用於處理系統管理任務和Web編程。孫寬Python[1] 已經成為最受歡迎的程序設計語言之一。2011年1月,它被TIOBE編程語言排行榜評為2010年度語言。自從2004年以後,python的使用率是呈線性增長[2] 。
由於Python語言的簡潔、易讀以及可擴展性,在國外用Python做科學計算的研究機構日益增多,一些知名大學
已經採用Python教授程序設計課程。例如卡耐基梅隆大學的編程基礎和麻省理工學院的計算機科學及編程導論就使用Python語言講授。眾多開源的科學
計算軟體包都提供了Python的調用介面,
例如著名的計算機視覺庫OpenCV、三維可視化庫VTK、醫學圖像處理庫ITK。而Python專用的科學計算擴展庫就更多了,例如如下3個十分經典的
科學計算擴展庫:NumPy、SciPy和則消亮matplotlib,它們分別為Python提橋脊供了快速數組處理、數值運算以及繪圖功能。因此Python語
言及其眾多的擴展庫所構成的開發環境十分適合工程技術、科研人員處理實驗數據、製作圖表,甚至開發科學計算應用程序。
說起科學計算,首先會被提到的可能是MATLAB。然而除了MATLAB的一些專業性很強的工具箱還無法替代之外,MATLAB的大部分常用功能都可以在Python世界中找到相應的擴展庫。和MATLAB相比,用Python做科學計算有如下優點:
● 首先,MATLAB是一款商用軟體,並且價格不菲。而Python完全免費,眾多開源的科學計算庫都提供了Python的調用介面。用戶可以在任何計算機上免費安裝Python及其絕大多數擴展庫。
● 其次,與MATLAB相比,Python是一門更易學、更嚴謹的程序設計語言。它能讓用戶編寫出更易讀、易維護的代碼。
● 最後,MATLAB主要專注於工程和科學計算。然而即使在計算領域,也經常會遇到文件管理、界面設計、網路通信等各種需求。而Python有著豐富的擴展庫,可以輕易完成各種高級任務,開發者可以用Python實現完整應用程序所需的各種功能。
2產生
Python的創始人為Guido van Rossum。1989年聖誕節期間,在阿姆斯特丹,Guido為了打發聖誕節的無趣,決心開發一個新的腳本解釋程序,做為ABC 語言的一種繼承。之所以選中Python(大蟒蛇的意思)作為程序的名字,是因為他是一個叫Monty Python的喜劇團體的愛好者。
ABC是由Guido參加設計的一種教學語言。就Guido本人看來,ABC
這種語言非常優美和強大,是專門為非專業程序員設計的。但是ABC語言並沒有成功,究其原因,Guido 認為是非開放造成的。Guido
決心在Python 中避免這一錯誤。同時,他還想實現在ABC 中閃現過但未曾實現的東西。
就這樣,Python在Guido手中誕生了。可以說,Python是從ABC發展起來,主要受到了Mola-3(另一種相當優美且強大的語言,為小型團體所設計的)的影響。並且結合了Unix shell和C的習慣。
3風格
Python在設計上堅持了清晰劃一的風格,這使得Python成為一門易讀、易維護,並且被大量用戶所歡迎的、用途廣泛的語言。
設計者開發時總的指導思想是,對於一個特定的問題,只要有一種最好的方法來解決就好了。這在由Tim
Peters寫的Python格言(稱為The Zen of Python)裡面表述為:There should be one-- and
preferably only one --obvious way to do it. 這正好和Perl語言(另一種功能類似的高級動態語言)的中心思想TMTOWTDI(There's More Than One Way To Do It)完全相反。
Python的作者有意的設計限制性很強的語法,使得不好的編程習慣(例如if語句的下一行不向右縮進)都不能通過編譯。其中很重要的一項就是Python的縮進規則。
一個和其他大多數語言(如C)的區別就是,一個模塊的界限,完全是由每行的首字元在這一行的位置來決定的(而C語言
是用一對花括弧{}來明確的定出模塊的邊界的,與字元的位置毫無關系)。這一點曾經引起過爭議。因為自從C這類的語言誕生後,語言的語法含義與字元的排列
方式分離開來,曾經被認為是一種程序語言的進步。不過不可否認的是,通過強製程序員們縮進(包括if,for和函數定義等所有需要使用模塊的地方),Python確實使得程序更加清晰和美觀。
4設計定位
Python
的設計哲學是「優雅」、「明確」、「簡單」。因此,Perl語言中「總是有多種方法來做同一件事」的理念在Python開發者中通常是難以忍受的。
Python開發者的哲學是「用一種方法,最好是只有一種方法來做一件事」。在設計Python語言時,如果面臨多種選擇,Python開發者一般會拒絕
花俏的語法,而選擇明確的沒有或者很少有歧義的語法。由於這種設計觀念的差異,Python源代碼通常被認為比Perl具備更好的可讀性,並且能夠支撐大
規模的軟體開發。這些准則被稱為Python格言。在Python解釋器內運行import this可以獲得完整的列表。
Python開發人員盡量避開不成熟或者不重要的優化。一些針對非重要部位的加快運行速度的補丁通常不會被合並到
Python內。所以很多人認為Python很慢。不過,根據二八定律,大多數程序對速度要求不高。在某些對運行速度要求很高的情況,Python設計師
傾向於使用JIT技術,或者用使用C/C++語言改寫這部分程序。可用的JIT技術是PyPy。
Python是完全面向對象的語言。函數、模塊、數字、字元串都是對象。並且完全支持繼承、重載、派生、多繼承,有益於增強源代碼的復用性。Python支持重載運算符和動態類型。相對於Lisp這種傳統的函數式編程語言,Python對函數式設計只提供了有限的支持。有兩個標准庫(functools, itertools)提供了Haskell和Standard ML中久經考驗的函數式程序設計工具。
雖然Python可能被粗略地分類為「腳本語言」(script language),但實際上一些大規模軟體開發計劃例如Zope、Mnet及BitTorrent,Google也廣泛地使用它。Python的支持者較喜歡稱它為一種高級動態編程語言,原因是「腳本語言」泛指僅作簡單程序設計任務的語言,如shellscript、VBScript等只能處理簡單任務的編程語言,並不能與Python相提並論。
Python本身被設計為可擴充的。並非所有的特性和功能都集成到語言核心。Python提供了豐富的API和
工具,以便程序員能夠輕松地使用C語言、C++、Cython來編寫擴充模塊。Python編譯器本身也可以被集成到其它需要腳本語言的程序內。因此,很
多人還把Python作為一種「膠水語言」(glue
language)使用。使用Python將其他語言編寫的程序進行集成和封裝。在Google內部的很多項目,例如Google
Engine使用C++編寫性能要求極高的部分,然後用Python或Java/Go調用相應的模塊。《Python技術手冊》的作者馬特利(Alex
Martelli)說:「這很難講,不過,2004 年,Python 已在 Google 內部使用,Google 召募許多 Python
高手,但在這之前就已決定使用Python,他們的目的是 Python where we can, C++ where we
must,在操控硬體的場合使用 C++,在快速開發時候使用 Python。」
3. 如何採用Python語言繪制一條彩色的蟒蛇
採用的是Python shell來實現的,也就是大家所說的IDLE插件。
END
2.建立腳本
1
單擊shell界面上面工具欄中的「file」-「new file」。
2
如下圖所示,我們建立了一個腳本文件。
END
3.保存文件
1
單擊腳本文件上側的「file」-「save」,來實現對文件的保存。
2
選定上述命令後,會出現一個保存設置界面,將我們的腳本保存到相應的位置,並給其命名,然後,單擊「保存」,完成文件保存。
END
4.編寫代碼
1
1.腳本結構
根據需求,本例需要建立兩個函數一個是main()函數,一個是drawSnake函數。
2
2.編寫drawSnake:
該函數數用來實現畫蛇的具體操作,主要涉及到到畫圖的方法;對於該函數,我們首先得確定畫蛇的基本策略,該函數中用到了很多的turtle包中的子函數,具體可參見該包的幫助文檔,這里貼出代碼:
def drawSnake(rad,angle,len,neckrad):
mycolor=["black","red","red","blue","yellow"]
yocolor=["yellow","green","yellow","red","red"]
for i in range(len):
turtle.pencolor(mycolor[i])
turtle.circle(rad,angle)
turtle.pencolor(yocolor[i])
turtle.circle(-rad,angle)
turtle.pencolor("green")
turtle.circle(rad,angle/2)
turtle.pencolor("yellow")
turtle.fd(rad)
turtle.pencolor("red")
turtle.circle(neckrad+1,180)
turtle.pencolor("green")
turtle.fd(rad*2/3)
3
3.編寫main函數:
代碼貼出如下,具體代碼意思可參見turtle的幫助文檔:
def main():
turtle.setup(1300,800,0,0)
pythonsize=30
turtle.pensize(pythonsize)
turtle.seth(-40)
drawSnake(40,80,5,pythonsize/2)
4
4.執行main:
與其它不同的是我們需要在最後,將我們所定義的代碼進行執行,不然就是空的。就是圖中的main()
END
5.編譯運行
單擊腳本界面上的「run」-「run mole」,就可以運行我們的畫圖程序了。
執行效果,如下,雖然看起來有點不好看,但它把我們的真個執行過程給展現出來了。
4. python蟒蛇繪製程序
沒有問題,可以turtle.pensize(30)這樣寫的。
你這里是因為後面有一個值也用到這個變數,drawSnake(40,80,5,pythonsize/2),所以不能刪除