Python語言簡介
Python是一種解釋型窄瘟、面向?qū)ο蠊迕铡?dòng)態(tài)數(shù)據(jù)類型的高級程序設(shè)計(jì)語言具垫。
Python由Guido van Rossum于1989年底發(fā)明叫惊,第一個(gè)公開發(fā)行版發(fā)行于1991年。
像Perl語言一樣, Python 源代碼同樣遵循 GPL(GNU General Public License)協(xié)議做修。
Python 是一種解釋型語言:這意味著開發(fā)過程中沒有了編譯這個(gè)環(huán)節(jié)。類似于PHP和Perl語言抡草。
Python 是交互式語言:可以一條一條地執(zhí)行你的程序
Python 是初學(xué)者的語言:Python很適合初學(xué)者學(xué)習(xí)饰及,其
Python 是面向?qū)ο笳Z言: 通過面向?qū)ο蟮姆椒ǎ谟萌死斫獾姆绞綄?fù)雜系統(tǒng)進(jìn)行分析康震、設(shè)計(jì)與編程燎含。
Python能干什么?
Python可以用來做什么取決于你對Python語言靈活運(yùn)用的程度
Python作為一種既簡單又強(qiáng)大的語言腿短,目前越來越多的項(xiàng)目都出現(xiàn)了Python的身影:
國內(nèi)應(yīng)用:豆瓣(架構(gòu):Quixote堂吉訶德)屏箍、搜狐(搜狐郵箱是架構(gòu)在web.py上)绘梦、金山、騰訊赴魁、盛大卸奉、網(wǎng)易、百度颖御、阿里榄棵、淘寶、熱酷潘拱、土豆疹鳄、新浪、果殼……
國外應(yīng)用:谷歌芦岂、美國航空航天局瘪弓、YouTube、Facebook禽最、工業(yè)光魔腺怯、Pixar、紅帽弛随、lucasfilm/Industrial Light and Magic瓢喉、Zope……
Python應(yīng)用領(lǐng)域:
Web開發(fā)、數(shù)據(jù)庫編程舀透、桌面GUI應(yīng)用開發(fā)栓票、科學(xué)與數(shù)值計(jì)算、教育教學(xué)愕够、網(wǎng)絡(luò)應(yīng)用開發(fā)走贪、軟件開發(fā)(控制、管理惑芭、測試等)坠狡、游戲與3D影像
游戲開發(fā)、網(wǎng)站建設(shè)遂跟、機(jī)器人和航天飛機(jī)控制等領(lǐng)域
Python幾乎可以用在任何場合(轉(zhuǎn)載者注:前提是逃沿,你自己的確掌握了Python及相關(guān)知識(shí))
Python語言的優(yōu)點(diǎn)和缺點(diǎn)
任何優(yōu)點(diǎn)和缺點(diǎn),都是相對的幻锁,Python也是如此凯亮。個(gè)人所理解的Python語言的優(yōu)點(diǎn):
1.入門快,簡單
如果只是用Python來實(shí)現(xiàn)你的一些小功能的話哄尔,你會(huì)發(fā)現(xiàn)假消,學(xué)完一些基本的語法后,就可以直接寫代碼岭接,然后運(yùn)行富拗,就可以得到的結(jié)果了臼予。
不論是從Python的語法,還是對于腳本語言的無需編譯直接運(yùn)行啃沪,你都會(huì)發(fā)現(xiàn)粘拾,入門和上手,相對都很簡單谅阿。此所謂的入門快和簡單半哟。
2.功能強(qiáng)大,使用方便
Python語言的所謂的功能強(qiáng)大签餐,并不是語言本身多么多么牛X寓涨,而是基于好用的,內(nèi)置的標(biāo)準(zhǔn)庫和豐富的氯檐,第三方的庫/模塊戒良,數(shù)量眾多,涉及領(lǐng)域眾多冠摄,而使得你去實(shí)現(xiàn)某些功能的時(shí)候糯崎,發(fā)現(xiàn)一些常用的核心功能,別人都幫你實(shí)現(xiàn)好了河泳。只需要你去使用對應(yīng)的庫沃呢,寫寫幾行代碼,就可以完整復(fù)雜且強(qiáng)大的功能了拆挥。舉個(gè)類似的比喻就像:
本來你想從頭開始造個(gè)汽車薄霜,結(jié)果你在Python語言中就會(huì)發(fā)現(xiàn),其核心的發(fā)動(dòng)機(jī)纸兔,地盤惰瓜,車架,等等汉矿,都有Python內(nèi)置的相關(guān)功能崎坊,和第三方的庫,幫你實(shí)現(xiàn)好了洲拇。
設(shè)置同一種功能奈揍,比如發(fā)動(dòng)機(jī),還有多個(gè)選擇赋续,而你要做的只是打月,去稍微了解的其各自優(yōu)缺點(diǎn),然后組合一下蚕捉,稍微校準(zhǔn)一下,然后就很快的弄出一臺(tái)汽車了柴淘。
與此相對應(yīng)的是迫淹,如果用其他語言實(shí)現(xiàn)秘通,很可能的是,對于發(fā)動(dòng)機(jī)啥的核心部件敛熬,沒有現(xiàn)成的肺稀,而你要自己手動(dòng)去打造,用對應(yīng)的代碼自己去實(shí)現(xiàn)应民,或者即使有現(xiàn)成的话原,結(jié)果功能也不夠強(qiáng),或者選擇余地不夠多诲锹,沒有你滿意的繁仁,還是需要你額外花很多精力去實(shí)現(xiàn),然后把發(fā)動(dòng)機(jī)归园,自己搞定之后黄虱,發(fā)現(xiàn)還有其他很多功能,也需要自己切實(shí)現(xiàn)庸诱,如此捻浦,你用其他語言,從無到有去弄出一臺(tái)汽車的話桥爽,可能是少則幾周朱灿,多則幾個(gè)月。而用Python钠四,很可能是幾天盗扒,或者1,2周,就搞定了形导。
此所謂的环疼,Python語言的內(nèi)置庫的功能強(qiáng)大和第三方庫的功能強(qiáng)和數(shù)目多,綜合而言就是Python很強(qiáng)大朵耕。
3.可移植性
可移植性炫隶,簡單說的就是,對于同樣的代碼阎曹,可以不經(jīng)過改動(dòng)伪阶,拿到別的一個(gè)平臺(tái)下,直接可以同樣使用处嫌,實(shí)現(xiàn)了同樣的功能栅贴。
與此相對的,其他很多語言熏迹,比如C等檐薯,換個(gè)平臺(tái),很可能還需要改動(dòng)一些代碼,代碼才能正常運(yùn)行坛缕,實(shí)現(xiàn)同樣的功能墓猎;
比如C#,那基本上赚楚,只能在Windows平臺(tái)下運(yùn)行毙沾,換個(gè)其他的,比如Linux宠页,基本上就沒法運(yùn)行左胞,沒法用了。
而Python的可移植性举户,就是因?yàn)榭局妫瑹o序編譯,就是個(gè)普通的文本敛摘,就可以了门烂。
不同平臺(tái),安裝了Python環(huán)境后兄淫,都有對應(yīng)的解釋器屯远,將Python代碼解析成可以在當(dāng)前平臺(tái)下運(yùn)行的代碼,實(shí)現(xiàn)同樣的功能捕虽。
此所謂慨丐,Python,相對其他很多語言泄私,有很好的可移植性房揭。
4.開源
簡單理解為,Python代碼的核心的庫晌端,核心的功能的實(shí)現(xiàn)捅暴,本身就是用不同代碼實(shí)現(xiàn)的,和Python代碼本身實(shí)現(xiàn)的咧纠;
所以蓬痒,你要是高興,可以自己去研究其本身是如何實(shí)現(xiàn)的漆羔;
你要是高興梧奢,可以自己給其增加更多更好用的功能。
與此相對的是演痒,其他很多語言亲轨,比如C#,那是微軟實(shí)現(xiàn)的鸟顺,核心代碼惦蚊,是不開放的,你無法知道其內(nèi)部如何實(shí)現(xiàn)的。
代碼開源的另外一個(gè)好處是蹦锋,萬一發(fā)現(xiàn)了代碼中有bug曾撤,有問題的時(shí)候,你可以幫助語言本身去改進(jìn)晕粪,不斷提升語言本身。
此所謂渐裸,Python是開源的巫湘。
5.其他好處
Python還有其他一些好處,比如可嵌入性等等昏鹃,可以把其他語言嵌入都Python中尚氛。
關(guān)于更多好處,不再贅述洞渤。
Python的缺點(diǎn)
Python是門解釋性語言阅嘶,所以,相對來說的性能载迄,是比其他有些語言讯柔,比如C語言,要差一點(diǎn)护昧。這個(gè)是事實(shí)魂迄。
不過,更多的時(shí)候惋耙,尤其是很多上層領(lǐng)域捣炬,我們使用Python,要的就是方便好用绽榛,而對于性能湿酸,有時(shí)候,或者說很多時(shí)候灭美,所帶來的性能損失推溃,可以忽略不計(jì)。
所以冲粤,大家也才愿意用Python的美莫。
再說,很多時(shí)候梯捕,真的需要關(guān)心性能的話厢呵,還可以找辦法去優(yōu)化提升,以達(dá)到自己的需求傀顾;
此所謂的襟铭,Python性能相對要差,只不過多數(shù)時(shí)候可以忽略不計(jì)。
其他缺點(diǎn)
暫時(shí)也沒太多寒砖,值得一提的缺點(diǎn)赐劣。