第1章 歡迎來(lái)到Python世界

教育的真諦就是當(dāng)你忘記一切所學(xué)的東西之后所剩下的東西

1.1 什么是Python

Python是一門(mén)優(yōu)雅而健壯的通用型編程語(yǔ)言原环,它功能強(qiáng)大,簡(jiǎn)單易學(xué)束莫。Python接近自然語(yǔ)言碧注,讀Python的代碼就像讀英文文檔一樣易于理解竖哩。

1.2 起源

大家好嘶窄,我是平頭哥怀跛。在今后的一段時(shí)間里,我會(huì)跟大家一起學(xué)習(xí)python柄冲。這次主要的參考書(shū)目為《Python核心編程》吻谋。書(shū)中提到的代碼我會(huì)全部用最新的Python 3.7.2重寫(xiě),代碼我會(huì)同步更新到github现横,大家有什么問(wèn)題可以跟我留言漓拾。再次感謝大家的支持阁最,閑言少敘,咱們現(xiàn)在進(jìn)入正題骇两。

python之父是 Guido van Rossum(吉多·范羅蘇姆),Guido van Rossum在荷蘭出生闽撤、成長(zhǎng),1982年在阿姆斯特丹大學(xué)獲得數(shù)學(xué)和計(jì)算機(jī)科學(xué)碩士學(xué)位脯颜。后來(lái)Guido van Rossum在荷蘭阿姆斯特丹的國(guó)家數(shù)學(xué)和計(jì)算機(jī)科學(xué)研究學(xué)會(huì)(CWI)工作。曾參與開(kāi)發(fā)解釋型編程語(yǔ)言ABC贩据,因不滿足ABC語(yǔ)言的開(kāi)發(fā)能力栋操,于1989年底創(chuàng)造Python,于1991年初發(fā)布了第一個(gè)Python發(fā)行版饱亮。

1.3 特點(diǎn)

1.3.1 高級(jí)

Python具有高級(jí)的數(shù)據(jù)結(jié)構(gòu)矾芙,例如內(nèi)置的列表(大小可變數(shù)組)和字典(哈希表)。

1.3.2 面向?qū)ο?/h3>

Python支持面向過(guò)程編程近上,面向?qū)ο缶幊烫尴埽瘮?shù)式編程。

1.3.3 可升級(jí)

Python提供了基本的開(kāi)發(fā)模塊壹无,你可以在它上面開(kāi)發(fā)你的軟件葱绒,而當(dāng)這些需要拓展和增長(zhǎng)時(shí),Python的可插入性和模塊化架構(gòu)能使你的項(xiàng)目生機(jī)盎然和易于管理斗锭。

1.3.4 可拓展

Python支持使用C地淀、C++、Java岖是、C#帮毁、Golang等語(yǔ)言為其寫(xiě)拓展模塊,已達(dá)到性能等顯著提升豺撑。

1.3.5 可移植

我們通常所說(shuō)的Python是指的CPython烈疚,是由C語(yǔ)言編寫(xiě)而出。C語(yǔ)言有較強(qiáng)的可移植性聪轿,使得Python可以運(yùn)行在任何帶有ANSI C編譯器的平臺(tái)上爷肝。盡管有一些針對(duì)不同平臺(tái)開(kāi)發(fā)的特定模塊,但是在任何一個(gè)平臺(tái)上用Python開(kāi)發(fā)的通用軟件都可以稍適修改或原封不動(dòng)地在其他平臺(tái)上運(yùn)行屹电。這種可移植性即適用于不同都架構(gòu)阶剑,也適用于不同的操作系統(tǒng)。

1.3.6 易學(xué)

Python關(guān)鍵字少危号、結(jié)構(gòu)簡(jiǎn)單牧愁、語(yǔ)法清晰。小學(xué)生都能學(xué)會(huì)外莲。

1.3.7 易讀

Python接近自然語(yǔ)言猪半,讀Python的代碼就像讀英文文檔一樣易于理解兔朦。

1.3.8 易于維護(hù)

Python本身就易于學(xué)習(xí)于閱讀,它的維護(hù)成本也相對(duì)較低磨确。

健壯性

一旦你的Python程序由于錯(cuò)誤崩潰沽甥,Python解釋器就會(huì)轉(zhuǎn)向一個(gè)堆棧跟蹤,那里面有可用到的全部信息乏奥,包括你程序崩潰的原因摆舟,以及是哪段代碼出錯(cuò)了。這些錯(cuò)誤被稱為異常邓了。如果在運(yùn)行時(shí)發(fā)生這樣的錯(cuò)誤恨诱,Python使你能夠監(jiān)控這些錯(cuò)誤并進(jìn)行處理。

針對(duì)異称可以采取相應(yīng)的措施照宝,例如解決問(wèn)題、重定向程序句葵、執(zhí)行清除或維護(hù)步驟厕鹃、正常關(guān)閉應(yīng)用程序,亦或干脆忽略掉乍丈。無(wú)論如何剂碴,這些都可以有效地縮減開(kāi)發(fā)周期中都調(diào)試環(huán)節(jié)。

1.3.10 高效的快速原型開(kāi)發(fā)工具

Python有許多面向其他系統(tǒng)的接口诗赌,它的功能強(qiáng)大汗茄,所以完全可以用Python開(kāi)發(fā)整個(gè)系統(tǒng)的原型。實(shí)際上在工作中我也是這么干的铭若,一般是先用Python快速實(shí)現(xiàn)產(chǎn)品原型洪碳,后續(xù)用編譯型語(yǔ)言(C、C++叼屠、Go等)進(jìn)行優(yōu)化瞳腌。傳統(tǒng)的編譯型語(yǔ)言也能實(shí)現(xiàn)同樣的系統(tǒng)建模,但是Python工程方面的簡(jiǎn)潔性可以讓我們?cè)谧疃痰臅r(shí)間內(nèi)游刃有余的完成相同的工作镜雨。Python庫(kù)多嫂侍,無(wú)論你打算開(kāi)發(fā)什么樣的應(yīng)用都能找到相應(yīng)的模塊和包幫你實(shí)現(xiàn)。

1.3.11 內(nèi)存管理器

C和C++最大的弊病在于內(nèi)存管理由開(kāi)發(fā)者負(fù)責(zé)(當(dāng)然從另外一個(gè)角度來(lái)看這也是C和C++的優(yōu)點(diǎn))荚坞,所以哪怕是一個(gè)很少訪問(wèn)挑宠、修改和管理內(nèi)存的應(yīng)用程序,程序員也必修在執(zhí)行了基本任務(wù)之外履行這些職責(zé)颓影。這些加在開(kāi)發(fā)者身上的沒(méi)有必要的負(fù)擔(dān)和職責(zé)常常會(huì)分散經(jīng)歷各淀。

在Python中,由于內(nèi)存管理是由Python解釋器負(fù)責(zé)的诡挂,所以開(kāi)發(fā)人員就可以從內(nèi)存事務(wù)中解放出來(lái)碎浇,全神貫注于最直接的目標(biāo)临谱。這會(huì)使錯(cuò)誤更少、程序更健壯奴璃、開(kāi)發(fā)周期更短悉默。

1.3.12 解釋性和(字節(jié))編譯性

Python是一種解釋型語(yǔ)言,這意味著開(kāi)發(fā)過(guò)程中沒(méi)有編譯這個(gè)環(huán)節(jié)苟穆。一般來(lái)說(shuō)抄课,由于不是以本地機(jī)器碼運(yùn)行,純粹的解釋型語(yǔ)言比編譯型語(yǔ)言運(yùn)行得慢雳旅。然而剖膳,類似于Java,Python實(shí)際上是字節(jié)編譯的岭辣,其結(jié)果就是可以生成一種接近機(jī)器碼語(yǔ)言的中間形式。這不僅改善了Python的性能甸饱,還同時(shí)使它保持了解釋型語(yǔ)言的優(yōu)點(diǎn)沦童。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市叹话,隨后出現(xiàn)的幾起案子偷遗,更是在濱河造成了極大的恐慌,老刑警劉巖驼壶,帶你破解...
    沈念sama閱讀 212,816評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件氏豌,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡热凹,警方通過(guò)查閱死者的電腦和手機(jī)泵喘,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,729評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)般妙,“玉大人纪铺,你說(shuō)我怎么就攤上這事〉欤” “怎么了鲜锚?”我有些...
    開(kāi)封第一講書(shū)人閱讀 158,300評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)苫拍。 經(jīng)常有香客問(wèn)我芜繁,道長(zhǎng),這世上最難降的妖魔是什么绒极? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,780評(píng)論 1 285
  • 正文 為了忘掉前任骏令,我火速辦了婚禮,結(jié)果婚禮上集峦,老公的妹妹穿的比我還像新娘伏社。我一直安慰自己抠刺,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,890評(píng)論 6 385
  • 文/花漫 我一把揭開(kāi)白布摘昌。 她就那樣靜靜地躺著速妖,像睡著了一般。 火紅的嫁衣襯著肌膚如雪聪黎。 梳的紋絲不亂的頭發(fā)上罕容,一...
    開(kāi)封第一講書(shū)人閱讀 50,084評(píng)論 1 291
  • 那天,我揣著相機(jī)與錄音稿饰,去河邊找鬼锦秒。 笑死,一個(gè)胖子當(dāng)著我的面吹牛喉镰,可吹牛的內(nèi)容都是我干的旅择。 我是一名探鬼主播,決...
    沈念sama閱讀 39,151評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼侣姆,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼生真!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起捺宗,我...
    開(kāi)封第一講書(shū)人閱讀 37,912評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤柱蟀,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后蚜厉,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體长已,經(jīng)...
    沈念sama閱讀 44,355評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,666評(píng)論 2 327
  • 正文 我和宋清朗相戀三年昼牛,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了术瓮。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,809評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡贰健,死狀恐怖斤斧,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情霎烙,我是刑警寧澤撬讽,帶...
    沈念sama閱讀 34,504評(píng)論 4 334
  • 正文 年R本政府宣布,位于F島的核電站悬垃,受9級(jí)特大地震影響游昼,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜尝蠕,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,150評(píng)論 3 317
  • 文/蒙蒙 一烘豌、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧看彼,春花似錦廊佩、人聲如沸囚聚。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,882評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)顽铸。三九已至,卻和暖如春料皇,著一層夾襖步出監(jiān)牢的瞬間谓松,已是汗流浹背内列。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,121評(píng)論 1 267
  • 我被黑心中介騙來(lái)泰國(guó)打工募逞, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人腕够。 一個(gè)月前我還...
    沈念sama閱讀 46,628評(píng)論 2 362
  • 正文 我出身青樓逊脯,卻偏偏與公主長(zhǎng)得像优质,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子军洼,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,724評(píng)論 2 351

推薦閱讀更多精彩內(nèi)容