Python語言編程的特點(diǎn)及其應(yīng)用
Python語言是一種功能強(qiáng)大的具有解釋性、交互性和面向?qū)ο蟮牡谒拇?jì)算機(jī)編程語言。它是由荷蘭人GuidovanRos sum在八十年代末和九十年代初設(shè)計(jì)出來的,GuidovanRossum于2005年加入Google,領(lǐng)導(dǎo)并從事Python語言每一個(gè)版本的設(shè)計(jì)和開發(fā)工作。
目前Python在國內(nèi)還沒有被廣泛熟知,但在國外早已得到成熟、廣泛的應(yīng)用,是非常流行的編程語言,無論在Web應(yīng)用還是非Web應(yīng)用中均扮演著重要角色。著名的搜索引擎google,其核心代碼就是用Python完成的,迪斯尼公司的動(dòng)畫生成,許多Unix的版本(包括Linux)都內(nèi)建了Python環(huán)境支持。國內(nèi)知名的豆瓣網(wǎng)也是使用Python技術(shù)建立。
Python也是一種腳本語言,它開發(fā)代碼的效率非常高,它具有強(qiáng)大和豐富實(shí)用的第三方標(biāo)準(zhǔn)庫,使得編程變得簡潔快速;Python語言的語法表達(dá)也非常優(yōu)美易讀;Python支持廣泛的應(yīng)用程序開發(fā),從簡單的文字處理到基于Web的開發(fā)及游戲設(shè)計(jì)的應(yīng)用。它是一種非常值得學(xué)習(xí)、推廣和應(yīng)用的一門實(shí)用性編程語言。
Python語言與CC++、Java語言和其他腳本語言比較在國內(nèi)知名度不高,但它與這些常見編程語言比較起來,有許多優(yōu)秀表現(xiàn),本文從以下幾個(gè)方面做相關(guān)探討。
1.Python語言的語法表達(dá)
Python語言的語法表達(dá)更加優(yōu)美、簡潔、易讀。例如:通過屏幕輸出稱為編程語言第一例的經(jīng)典句子“helloworld”,與C和Java相比,Python不需要建立CJava中的main函數(shù),而是直接給出輸出語句,輸出字符串:
>>>print“HelloPythonicWorld!”
屏幕輸出顯示結(jié)果:HelloPythonicWorld!
以上Python實(shí)現(xiàn)快速直接,所見即所得。
Python程序的易讀性也表現(xiàn)在它的代碼縮進(jìn)語法,Python的縮進(jìn)結(jié)構(gòu)使得Python代碼相對(duì)其他語言整齊了許多,Python語言中沒有采用其他語言中花括號(hào)或begin...end...分隔代碼塊,而是使用冒號(hào)和代碼縮進(jìn)來區(qū)分代碼之間的層次。例如,一個(gè)最簡單的有效if語句的寫法是:
ifTrue:
print“Yes,itistrue”
上面if語句在結(jié)尾處包含一個(gè)冒號(hào),通過它告知Python后跟一個(gè)語句,當(dāng)然還包括正確的代碼縮進(jìn)。
2.Python返回結(jié)果的兩種表達(dá)方式
Python可以實(shí)現(xiàn)通過函數(shù)返回結(jié)果以及通過圖形化表示更直觀給出結(jié)果的兩種表達(dá)方式。
這里,實(shí)現(xiàn)在字符串中求元音字母個(gè)數(shù),分別使用以下兩種方式表達(dá)。
1)通過函數(shù)實(shí)現(xiàn),返回元音字母個(gè)數(shù)值:vowelCount("Abcdef。。yzyzyz。ⅲ
returns3(twoa'sandonee).
2)通過圖形表達(dá)實(shí)現(xiàn),則可以使用餅圖,給出元音字母在全圖里所占的比例,更加直觀。
程序中使用Python的標(biāo)準(zhǔn)TkGUI工具包的接口,另外程序中通過設(shè)定兩個(gè)參數(shù),winWidth和winHeight,實(shí)現(xiàn)顯示給定尺寸的窗口,并用餅圖表示元音,輔音,或其他符號(hào)的字符數(shù),用這些約束進(jìn)行填充餅圖,因篇幅所限這里實(shí)現(xiàn)代碼略。
3.Python基于Web應(yīng)用和網(wǎng)游設(shè)計(jì)
Python和Java語言都是開源的、跨平臺(tái)語言,使用Python可以完成Java的所有功能,在基于Web應(yīng)用和網(wǎng)游設(shè)計(jì)中有更大優(yōu)勢。
Python基于Web應(yīng)用的實(shí)例中,知名的豆瓣網(wǎng)就是使用Python作為主體開發(fā)語言,進(jìn)行全面網(wǎng)站架構(gòu)以及相關(guān)應(yīng)用的設(shè)計(jì)與開發(fā),也成為國內(nèi)較成功的Python之Web應(yīng)用。
使用Python進(jìn)行Web開發(fā)比較流行的線程模型是基于WSGI傳統(tǒng)模式,WSGI是Pythonwebserver、application、middle ware之間的官方規(guī)范標(biāo)準(zhǔn),現(xiàn)在主流的Pythonwebserver和framework都是支持WSGI的。在Python后續(xù)發(fā)展中,WSGI也有兩方面的局限,一是不支持異步,例如一個(gè)異步的Webserver的Tornado,運(yùn)行Django,則Tornado的異步特性完全用不上;二是WSGIv1.0不支持Python3.x,因此在Web應(yīng)用未來發(fā)展趨勢中,異步模型將是一個(gè)轉(zhuǎn)換方向。
另一方面,當(dāng)前Python也已經(jīng)逐漸成為了WebGame行業(yè)的主流編程語言。國內(nèi)網(wǎng)游行業(yè)資深從業(yè)人員使用Python設(shè)計(jì)的動(dòng)作類網(wǎng)頁游戲中,在服務(wù)器端的設(shè)計(jì)基本使用Python開發(fā),甚至沒有使用C/C++代碼。在以往大多游戲設(shè)計(jì)里面,一般使用較多C++來寫host,同時(shí)經(jīng)常用到腳本語言,比如最常用的一個(gè)腳本語言LUA,一般來說,由C++調(diào)用多個(gè)LUA腳本來完成一個(gè)項(xiàng)目的業(yè)務(wù)邏輯;而使用Python設(shè)計(jì)時(shí)有所不同,Python本身就是用來寫host,主要調(diào)用使用Python來寫的業(yè)務(wù)邏輯。
網(wǎng)易的大量網(wǎng)絡(luò)游戲開發(fā)在服務(wù)器端代碼70%以上也是使用的Python語言設(shè)計(jì),代替了原來占比較多的C/C++。
4.基于Python的云技術(shù)及大數(shù)據(jù)應(yīng)用
Python基于云技術(shù)應(yīng)用中,很多底層的虛擬化都使用python。云計(jì)算核心思想是把所有的資源以服務(wù)的方式提供給客戶,云計(jì)算的平臺(tái)包括IaaS/PaaS/SaaS等,IaaS是把基礎(chǔ)設(shè)施以服務(wù)的方式提供給客戶,虛擬化是IaaS的核心技術(shù),需要用虛擬化技術(shù)的物理資源進(jìn)行虛擬化,然后使用軟件的方式管理這些資源;PaaS是把計(jì)算平臺(tái)以服務(wù)的方式提供給客戶;SaaS也是類似。構(gòu)建的IasS、SaaS等服務(wù)的OpenStack是采用Python開發(fā)的,因此云計(jì)算的其他服務(wù)也是建立在IasS等服務(wù)之上的。
易度的PaaS是國內(nèi)第一個(gè)基于Python語言的企業(yè)應(yīng)用云端開發(fā)平臺(tái)。易度使用現(xiàn)有的企業(yè)PaaS平臺(tái),利用現(xiàn)有開源技術(shù),依托Python/Zope/Pyramid等主要技術(shù)來構(gòu)建這一平臺(tái)。在2007年易度轉(zhuǎn)向互聯(lián)網(wǎng)軟件,推出易度云辦公,專注企業(yè)云端的辦公方案。BAE是百度近年發(fā)布的云計(jì)算平臺(tái),百度云同時(shí)支持PHP、Java和Python三語言,Python的應(yīng)用也讓人眼前一亮。另外,谷歌應(yīng)用引擎云計(jì)算服務(wù),也相當(dāng)于一種虛擬服務(wù)器,它目前也是僅支持Python,它的一切都是圍繞Python構(gòu)建的。
在大數(shù)據(jù)處理方面,Python語言可通過python提供的標(biāo)準(zhǔn)庫有效的解決用Python進(jìn)行大數(shù)據(jù)處理的問題,這些數(shù)據(jù)轉(zhuǎn)換成適合Python分析的數(shù)據(jù)結(jié)構(gòu),之后用Python相應(yīng)的工具進(jìn)行數(shù)據(jù)分析、處理,提出數(shù)據(jù)特征并用一定的結(jié)構(gòu)形式表現(xiàn)出來。
Python基于信息化最新領(lǐng)域的應(yīng)用使得它更具有魅力,自從1991年P(guān)ython開始成為國外廣受歡迎的動(dòng)態(tài)編程語言開始,到目前為止Python在許多領(lǐng)域都有了比較成功的應(yīng)用,例如Google核心搜索引擎Python實(shí)現(xiàn);美國宇航局使用Python實(shí)現(xiàn)CAD/CAE/PDM庫及模型管理系統(tǒng);全球知名的光影技術(shù)先驅(qū)IndustrialLight&Magic使用Python處理電影光影合成;全球最大的游戲廠商EVE-online利用Python使同時(shí)服務(wù)10.000個(gè)玩家在同一個(gè)程序的內(nèi)存空間成為可能;Yahoo使用Python建立起全球范圍的站點(diǎn)群;迪斯尼樂園Disney使用Python動(dòng)畫的制作等等。
隨著互聯(lián)網(wǎng)和新技術(shù)的發(fā)展,國內(nèi)的技術(shù)環(huán)境也在不斷更新,更需要中國的軟件技術(shù)人才把Python這樣優(yōu)秀的自由、開源軟件進(jìn)行積極推廣、普及和應(yīng)用,并引入教學(xué)課堂,而事實(shí)上,國外許多頂尖高校已在多年前開設(shè)了基于Python語言系列課程,同時(shí)引導(dǎo)學(xué)生做進(jìn)一步研究與項(xiàng)目實(shí)習(xí),及時(shí)的與實(shí)際應(yīng)用接軌。期待未來國內(nèi)Python的教育和應(yīng)用環(huán)境能夠發(fā)展和普及,我們將拭目以待。
更多大數(shù)據(jù)相關(guān)小知識(shí),歡迎關(guān)注微信公眾號(hào)成都科多大數(shù)據(jù)。

發(fā)表評(píng)論
請輸入評(píng)論內(nèi)容...
請輸入評(píng)論/評(píng)論長度6~500個(gè)字
最新活動(dòng)更多
-
3月27日立即報(bào)名>> 【工程師系列】汽車電子技術(shù)在線大會(huì)
-
4月30日立即下載>> 【村田汽車】汽車E/E架構(gòu)革新中,新智能座艙挑戰(zhàn)的解決方案
-
5月15-17日立即預(yù)約>> 【線下巡回】2025年STM32峰會(huì)
-
即日-5.15立即報(bào)名>>> 【在線會(huì)議】安森美Hyperlux™ ID系列引領(lǐng)iToF技術(shù)革新
-
5月15日立即下載>> 【白皮書】精確和高效地表征3000V/20A功率器件應(yīng)用指南
-
5月16日立即參評(píng) >> 【評(píng)選啟動(dòng)】維科杯·OFweek 2025(第十屆)人工智能行業(yè)年度評(píng)選
推薦專題
- 1 UALink規(guī)范發(fā)布:挑戰(zhàn)英偉達(dá)AI統(tǒng)治的開始
- 2 北電數(shù)智主辦酒仙橋論壇,探索AI產(chǎn)業(yè)發(fā)展新路徑
- 3 降薪、加班、裁員三重暴擊,“AI四小龍”已折戟兩家
- 4 “AI寒武紀(jì)”爆發(fā)至今,五類新物種登上歷史舞臺(tái)
- 5 國產(chǎn)智駕迎戰(zhàn)特斯拉FSD,AI含量差幾何?
- 6 光計(jì)算迎來商業(yè)化突破,但落地仍需時(shí)間
- 7 東陽光:2024年扭虧、一季度凈利大增,液冷疊加具身智能打開成長空間
- 8 地平線自動(dòng)駕駛方案解讀
- 9 封殺AI“照騙”,“淘寶們”終于不忍了?
- 10 優(yōu)必選:營收大增主靠小件,虧損繼續(xù)又逢關(guān)稅,能否乘機(jī)器人東風(fēng)翻身?