深入淺出python(HeadFirstPython)前言

原書(shū)出版公司: O'Reilly inc.

翻譯出版公司:中國(guó)電力出版社

作者:Paul Barry

譯者:林琪、郭靜等

網(wǎng)站:http://oreilly.com.cn/(出版社)

http://headfirstlabs.com/(本書(shū))

重要提示:

1 將重要的編程概念直接送入你的大腦。

2 用列表、集合和字典對(duì)數(shù)據(jù)建模。

3 將數(shù)據(jù)保存在pickle中。

4 連接JSON,Adroid和App Engine。

5 把你的定制移植到Web上。

6 在PyPI上與全世界共享你的代碼。

一、這本書(shū)為何與眾不同?

我們覺(jué)得你的時(shí)間相當(dāng)寶貴,不應(yīng)當(dāng)過(guò)多地花費(fèi)在與新概念的糾纏之中。通過(guò)應(yīng)用認(rèn)知科學(xué)和學(xué)習(xí)理論的最新研究成果,《Head First Python(中文版)可以讓你投人一個(gè)需要多感官參與的學(xué)習(xí)體驗(yàn),這本書(shū)采用豐富直觀的形式使你的大腦真正開(kāi)動(dòng)起來(lái),而不是長(zhǎng)篇累牘地說(shuō)教,讓你昏昏欲睡。

二、您將從本書(shū)學(xué)會(huì)什么?

你想過(guò)可以通過(guò)一本書(shū)就學(xué)會(huì)Python嗎?《Head First Python (中文版))》 超越枯燥的語(yǔ)法和用法手冊(cè),通過(guò)一種獨(dú)特的方法教你學(xué)習(xí)這種語(yǔ)言。你會(huì)迅速掌握Python的基礎(chǔ)知識(shí),然后轉(zhuǎn)向待久存儲(chǔ)、異常處理、Web開(kāi)發(fā)、SQLite、數(shù)據(jù)加工和Google App Engine。你還將學(xué)習(xí)如何為Android編寫(xiě)移動(dòng)應(yīng)用,這都要?dú)w功于Python為你賦予的強(qiáng)大能力。本書(shū)會(huì)提供充分并 1完備的學(xué)習(xí)體驗(yàn),幫助你成為一名真正的Python程序員。


三、本書(shū)作者

Paul Barry最近發(fā)現(xiàn)他的編程生涯已近四分之一個(gè)世紀(jì),這個(gè)事實(shí)著實(shí)讓人有些震驚,在此期間,Paul使用過(guò)多種不同的編程語(yǔ)言編寫(xiě)程序,他在兩個(gè)大洲的兩個(gè)國(guó)家生活并工作過(guò),并且娶妻生子,如今已經(jīng)有3個(gè)孩子(當(dāng)然……實(shí)際上孩子們都是他妻子在悉心照顧,不過(guò)Paul確實(shí)在他們身邊),另外他還攻讀了計(jì)算機(jī)的學(xué)士和碩士學(xué)位,編寫(xiě)或合作編寫(xiě)了另外3本書(shū),還為《Linux Journal》(他是這家雜志的特約編輯)撰寫(xiě)了大量技術(shù)文章。

Paul從第-眼看到《Head First HTML with CSS & XHTML》就愛(ài)不釋手,當(dāng)時(shí)就意識(shí)到“Head First”方法必將成為教授編程的一種絕妙方法。那時(shí)他欣喜萬(wàn)分,同樣興奮的還有David Griffiths,他們共同完成了《Head First Programming))來(lái)證明當(dāng)初的預(yù)感并非妄想。

Paul平日的工作是愛(ài)爾蘭卡羅理工學(xué)院的一名講師。作為計(jì)算與網(wǎng)絡(luò)系的老師,Paul每天都在研究、學(xué)以及向?qū)W生們傳授編程技術(shù),其中也包括Python。

最近Paul拿到了 “課程與教學(xué)”研究生畢業(yè)證書(shū),終于放心地發(fā)現(xiàn)他所做的大多數(shù)工作確實(shí)符合當(dāng)今的第三級(jí)最佳實(shí)踐。

四、如何使用這本書(shū)?

誰(shuí)適合看這本書(shū)?

如果對(duì)下面的所有問(wèn)題都能肯定地回答“是”:

1 你是不是已經(jīng)知道如何用另外一種編程語(yǔ)言編程?

2 你是不是希望掌握Python編程的訣竅,想把它補(bǔ)充到你的工具集中,并用它完成一些新的創(chuàng)舉?

3 你是不是更愿意親自動(dòng)手,在實(shí)踐中應(yīng)用所學(xué),而不只是聽(tīng)別人長(zhǎng)篇大論地說(shuō)教?

那么,這正是你要的書(shū)。

誰(shuí)可能不適合看這本書(shū)?

如果滿(mǎn)足下面任何一種情況:

1 你是不是已經(jīng)了解Python編程中需要知道的絕大多數(shù)內(nèi)容?

2 你是不是正在找一本Python參考書(shū),希望它能極其詳盡地涵蓋所有細(xì)節(jié)?

3 你是不是寧愿腳趾甲被15只尖叫的猴子拔掉也不愿意學(xué)新東西?是不是認(rèn)為Python書(shū)就應(yīng)該無(wú)所不包,即使這會(huì)讓讀者厭煩不已,也覺(jué)得這樣反而更好?

那么,這本書(shū)并不適合你。

我們知道你在想什么:

“這算是一本正式的Python書(shū)嗎?”

“這些圖用來(lái)做什么?”

“我真的能這樣學(xué)嗎?”

我們也知道你的大腦正在想什么:

你的大腦總是渴求一些新奇的東西。它一直在搜尋、審視、期待著不尋常的事情發(fā)生。大腦的構(gòu)造就是如此,正是這一點(diǎn)才讓我們不至于墨守成規(guī),能夠與時(shí)俱進(jìn)。

我們每天都會(huì)遇到許多按部就班的事情,這些事情都很普通,對(duì)于這樣一些例行的事情或者平常的東西,你的大腦又是怎么處理的呢?它的做法很簡(jiǎn)單,就是不讓這些平常的東西妨礙大腦真正的工作。那么什么是大腦真正的工作呢?這就是記住那些確實(shí)重要的事情。它不會(huì)費(fèi)心去記乏味的東西。就好像大腦里有一個(gè)篩子,這個(gè)篩子會(huì)篩掉“顯然不重要”的東西,如果遇到的事情枯燥乏味,這些東西就無(wú)法通過(guò)這個(gè)篩子。

那么你的大腦怎么知道到底哪些東西重要呢?打個(gè)比方,假如你某一天外出旅行,突然一只大老虎跳到你面前,此時(shí)此刻,你的大腦會(huì)做何反應(yīng)?

神經(jīng)元會(huì)“點(diǎn)火”,情緒爆發(fā),釋放出一些化學(xué)物質(zhì)。

好了,這樣你的大腦就會(huì)知道……

這肯定很重要!可不能忘記了!

不過(guò),假如你正待在家里或者坐在圖書(shū)館里,這里很安全、很舒適,肯定沒(méi)有老虎。你正在刻苦學(xué)習(xí),準(zhǔn)備應(yīng)付考試。也可能想學(xué)一些比較難的技術(shù),你的老板認(rèn)為掌握這種技術(shù)需要一周時(shí)間,最多不超過(guò)十天。

這就存在一個(gè)問(wèn)題。你的大腦很想給你幫忙。它會(huì)努力地把這些顯然不太重要的內(nèi)容趕走,保證這些東西不去侵占本不算充足的腦力資源。這些資源最好還是用來(lái)記住那些確實(shí)重要的事情,比如大老虎,遭遇火災(zāi)險(xiǎn)情等。再比如,你的大腦會(huì)讓你記住,絕對(duì)不 能把“聚會(huì)”時(shí)狂歡的照片放在你的Facebook網(wǎng)頁(yè)上。沒(méi)有一種簡(jiǎn)單的辦法來(lái)告訴大腦:“嘿,大腦,真是謝謝你了,不過(guò)不管這本書(shū)多沒(méi)意思,也不管現(xiàn)在我對(duì)它多么無(wú)動(dòng)于衷,但我確實(shí)希望你能把這些東西記下來(lái)。”

我們認(rèn)為“Head First”讀者就是要學(xué)習(xí)的人

那么,怎么學(xué)習(xí)呢?首先必須獲得知識(shí),然后做主自己確實(shí)不會(huì)忘記。這可不是填鴨式的硬塞。根據(jù)認(rèn)識(shí)科學(xué)、神經(jīng)生物學(xué)和教育心理學(xué)的最新研究,學(xué)習(xí)的途徑相當(dāng)豐富,絕非只是通過(guò)書(shū)本上的文字。我們很清楚怎么讓你的大腦興奮起來(lái)。

下面是一些Head First學(xué)習(xí)原則:

1 看得到

與單純的文字相比,圖片更能讓人記得住,通過(guò)圖片,學(xué)習(xí)效率會(huì)更高(對(duì)于記憶和傳遞型的學(xué)習(xí),甚至能有多達(dá)89%的效率提升)。而且圖片更能讓人看懂。以往總是把圖片話一頁(yè)的最下面,甚至話在另外一頁(yè)上,與此不同,把文字話在寫(xiě)之相關(guān)的圖片內(nèi)部,或者在圖片周?chē)鷮?xiě)上相關(guān)文字,學(xué)習(xí)者的能力就能得到多至兩倍的提高,從而能更好地解決有關(guān)問(wèn)題。

2 采取一種針對(duì)俱的交談式風(fēng)格

最新的研究表明,如果學(xué)習(xí)過(guò)程中采用一種第一人稱(chēng)的交談方式直接向讀者講述有關(guān)內(nèi)容,而不是用一種干巴巴的語(yǔ)調(diào)介紹,學(xué)生在學(xué)習(xí)之后的考試成績(jī)會(huì)提高40%。正確的做法是講故事,而不是做報(bào)告。要用通俗的語(yǔ)言。另外不要太嚴(yán)肅。如果你面對(duì)這樣兩個(gè)人,一個(gè)是你在餐會(huì)上結(jié)識(shí)的很有意思的朋友,另一個(gè)人學(xué)究氣十足,喋喋不休地對(duì)你說(shuō)說(shuō)教,在這兩個(gè)人中,你會(huì)更注意哪一個(gè)呢?

3 讓學(xué)習(xí)的人想得更深

換句話說(shuō),除非你很積極地讓神經(jīng)元活動(dòng)起來(lái),否則你的頭腦里什么也不會(huì)發(fā)生。必須引起讀者的好奇,促進(jìn)、要求并鼓勵(lì)讀者去解決問(wèn)題、得出結(jié)論、產(chǎn)生新的知識(shí)。為些,需要發(fā)出挑戰(zhàn),留下練習(xí)題和拓寬思路的問(wèn)題,并要求讀者完成一些實(shí)踐活動(dòng),讓左右腦都開(kāi)動(dòng)起來(lái),而且要利用多種思維。

4 引起讀者的注意,而且要讓他一直保持注意

我們可能都有過(guò)這樣的體驗(yàn),“我真的想把這個(gè)學(xué)會(huì),不過(guò)看過(guò)一頁(yè)后實(shí)在是讓我昏昏欲睡。”你的大腦注意的是那些不一般、有意思、有些奇怪、搶眼的、意料之外的東西。學(xué)習(xí)一項(xiàng)有難度的新技術(shù)并不一定枯燥。如果學(xué)習(xí)過(guò)程不乏味,你的大腦很快就能學(xué)會(huì)。

5 影響讀者的情緒

現(xiàn)在我們知道了,記憶能力很大程度上取決于所記的內(nèi)容對(duì)我們的情緒有怎樣的影響。如果是你關(guān)心的內(nèi)容,就肯定記得住。如果能讓你感受到了什么,這些東西就會(huì)留在你的腦海中。不過(guò),我們所說(shuō)的可不是什么關(guān)于男孩與狗的傷心故事。這里所說(shuō)的情緒是驚訝、好奇、覺(jué)得有趣、想知道“什么……”還有就是有一種自豪感,如果你解決了一個(gè)難題,學(xué)會(huì)了所有人都覺(jué)得很難的東西,或者發(fā)現(xiàn)你了解的一些知識(shí)竟然是那些自以為無(wú)所不能的傲慢家伙所不知道的,此時(shí)就會(huì)有一種自豪感油然而生。

五、元認(rèn)知:有關(guān)思考的思考

如果你真的想學(xué),而且想學(xué)得更快、更深,就應(yīng)該注意你怎樣才會(huì)專(zhuān)注起來(lái),考慮自己是怎樣思考的,并了解你的學(xué)方法。

我們中間大多數(shù)人長(zhǎng)這么大可能都沒(méi)有上過(guò)有關(guān)元認(rèn)知或?qū)W習(xí)理論的課程。我們想學(xué)習(xí),但是很少有人教我們?cè)趺磥?lái)學(xué)習(xí)。

不過(guò),這里可以做一個(gè)假設(shè),如果你手上有這本書(shū),你想學(xué)習(xí)如何設(shè)計(jì)用戶(hù)友好的網(wǎng)站,而且可能不想花太多時(shí)間。如果你想把這本書(shū)屮讀到 的知識(shí)真正用起來(lái),就需要記住你讀到的所有內(nèi)容。為此,必須理解這 些內(nèi)容。要想最大限度地利用這本書(shū)或其他任何一本書(shū),或者掌握學(xué)習(xí) 經(jīng)驗(yàn),就要讓你的大腦負(fù)起責(zé)任,耍求它記住這些內(nèi)容。

怎么做到呢?技巧就在于要讓你的人腦認(rèn)力你學(xué)習(xí)的新東西確實(shí)很 寬要,對(duì)你的生活有很大影響。就像老虎出現(xiàn)在面前一樣。如若不然,你將陷入曠日持久的拉鋸戰(zhàn)中,雖然你很想id住所學(xué)的新內(nèi)容, 但足你的大腦卻會(huì)竭盡全力地把它們拒之門(mén)外。

那么究竟怎樣才能讓你的大腦把編程看作是一只饑餓的老虎呢?

這有兩條路,一條比較慢,很乏味。另一條路不僅更快,還更有效。慢方法就是大量地重復(fù)。你肯定知道,如果反反復(fù)復(fù)地看到同一個(gè)東西,即便再?zèng)]有意思,你也能學(xué)會(huì)并記住。如果做了足夠的重復(fù),你的大腦就會(huì)說(shuō),“盡管看上去這對(duì)他來(lái)說(shuō)好像不重要,不過(guò),既然他這樣一而再、再而三地看同一個(gè)東西,所以我覺(jué)得這應(yīng)該是重要的。”

更快的方法是盡一切可能讓大腦活動(dòng)起來(lái),特別是開(kāi)動(dòng)大腦來(lái)完成不同類(lèi)型的活動(dòng)。如何做到這一點(diǎn)呢?上一頁(yè)列出的學(xué)習(xí)原則正是一些主要的做法,而且經(jīng)證實(shí),它們確實(shí)有助于讓你的大腦全力以赴。例如,研究表明,把文字放在所描述圖片的中間(而不是放在這一頁(yè)的別處,比如作為標(biāo)題,或者放在正文中),這樣會(huì)讓你的大腦更多地考慮這些文字與圖片之間有什么關(guān)系,而這就會(huì)讓更多的神經(jīng)元點(diǎn)火。讓更多的神經(jīng)元點(diǎn)火=你的大腦更有可能認(rèn)為這些內(nèi)容值得關(guān)注,而且很可能需要記下來(lái)。

交談式風(fēng)格也很有幫助,當(dāng)人們意識(shí)到自己在與“別人”交談時(shí),往往會(huì)更專(zhuān)心,這是因?yàn)樗麄兛傁敫险勗挼乃悸?,并能做出適當(dāng)?shù)陌l(fā)言。讓人驚奇的是,大腦并不關(guān)心“交談”的對(duì)象究竟是誰(shuí),即使你只是與一本書(shū)“交談”,它也不會(huì)在乎!另一方面,如果寫(xiě) 作風(fēng)格很正統(tǒng)、干巴巴的,你的大腦就會(huì)覺(jué)得,這就像坐在一群人中被動(dòng)地聽(tīng)人作報(bào)吿一樣,很沒(méi)意思,所以不必在意對(duì)方說(shuō)的是什么,甚至可能打瞌睡。

六、我們是這么做的:

我們用了很多圖,因?yàn)槟愕拇竽X更能接受看得見(jiàn)的東西,而不是純文字。對(duì)你的大腦來(lái)說(shuō),一幅圖抵千言。如果既有文字又有圖片,我們會(huì)把文字放在圖片當(dāng)中,因?yàn)槲淖痔幵谒枋龅膱D片中間時(shí),大腦的工作效率更高,倘若把這些描述文字作為標(biāo)題,或者“湮沒(méi)”在別處的大段文字中,就達(dá)不到這種效果了。

我們采用了重復(fù)手法,會(huì)用不同方式,采用不同類(lèi)型的媒體運(yùn)用多種思維手段來(lái)介紹同一個(gè)東西,目的是讓有關(guān)內(nèi)容更有可能儲(chǔ)存在你的大腦中,而且在大腦中多個(gè)區(qū)域都有容身之地。

我們會(huì)用你想不到的方式運(yùn)用概念和圖片,因?yàn)槟愕拇竽X喜歡新鮮玩藝。在提供圖和思想時(shí),至少會(huì)含著一些情緒因素,因?yàn)槿绻墚a(chǎn)生情緒反應(yīng),你的大腦就會(huì)投入更大的注意。而這會(huì)讓你感覺(jué)到這些東西更有可能要被記住,其實(shí)這種感覺(jué)可能只是很幽默,讓人奇怪或者比較感興趣而已.

我們采用了一種針對(duì)個(gè)人的交談式風(fēng)格,因?yàn)楫?dāng)你的大腦認(rèn)為你在參與一個(gè)會(huì)談,而不是被動(dòng)地聽(tīng)一場(chǎng)演示匯報(bào)時(shí),它就會(huì)更加關(guān)注,即使你實(shí)際上在讀一本書(shū),也就是說(shuō)在與書(shū)“交談”,而不是真正與人交談,但這對(duì)你的大腦來(lái)說(shuō)并沒(méi)有什么分別。

在這本書(shū)里,我們加入了80多個(gè)實(shí)踐活動(dòng),因?yàn)榕c單純的閱讀相比,如果能實(shí)際做點(diǎn)什么,你的大腦會(huì)更樂(lè)于學(xué)習(xí),更愿意去記。這些練習(xí)都是我們精心設(shè)計(jì)的,有一定的難度,但是確實(shí)能做出來(lái),因?yàn)檫@是大多數(shù)人所希望的。

我們采用了多種學(xué)習(xí)模式,因?yàn)楸M管你可能想循序漸進(jìn)地學(xué)習(xí),但是其他人可能希望先對(duì)整體有一個(gè)全面的認(rèn)識(shí),另外可能還有人只是想看一個(gè)例子。不過(guò),不管你想怎么學(xué),要是同樣的內(nèi)容能以多種方式來(lái)表述,這對(duì)毎一個(gè)人都會(huì)有好處。

這里的內(nèi)容不只是單單涉及左腦,也不只是讓右腦有所動(dòng)作,我們會(huì)讓你的左右腦都開(kāi)動(dòng)起來(lái),因?yàn)槟愕拇竽X參與得越多,你就越有可能學(xué)會(huì)并記住,而且能更長(zhǎng)時(shí)間地保持注意力。如果只有一半大腦在工作,通常意味著另一半有機(jī)會(huì)休息,這樣你就能更有效率地學(xué)習(xí)更長(zhǎng)時(shí)間。

我們會(huì)講故事,留練習(xí),從多種不同的角度來(lái)看同一個(gè)問(wèn)題,這是因?yàn)椋绻蟠竽X做一些評(píng)價(jià)和判斷,它就能更深入地學(xué)習(xí)。

我們會(huì)給出一些練習(xí),還會(huì)問(wèn)一些問(wèn)題,這些問(wèn)題往往沒(méi)有直截了當(dāng)?shù)拇鸢福ㄟ^(guò)克服這些挑戰(zhàn),你就能學(xué)得更好,因?yàn)樽尨竽X真正做點(diǎn)什么的話,它就更能學(xué)會(huì)并記住。想想吧,如果只是在體育館里看著別人流汗,這對(duì)于保待你自己的體形肯定不會(huì)有什么幫助,正所謂臨淵羨魚(yú),不如退而結(jié)網(wǎng)。不過(guò)另一方面,我們會(huì)竭盡所能不讓你鉆牛角尖,把勁用錯(cuò)了地方,而是能把功夫用在點(diǎn)子上。也就是說(shuō),你不會(huì)為搞定一個(gè)難懂的例子而耽擱,也不會(huì)花太多時(shí)間去弄明白一段艱澀難懂而且通篇行話的文字,我們的描述也不會(huì)太過(guò)簡(jiǎn)潔而讓人無(wú)從下手。

我們用了擬人手法。在故事中,在例子中,還有在圖中,你都會(huì)看到人的出現(xiàn),這是因?yàn)槟惚旧硎且粋€(gè)人,不錯(cuò),這就是原因。如果和人打交道,相對(duì)干某件東西而言,你的大腦會(huì)更為關(guān)注。

七、可以用下面的方法讓你的大腦就范

好了,我們?cè)撟龅囊呀?jīng)做了,剩下的就要看你自己的了。以下提示可以作為一個(gè)起點(diǎn):聽(tīng)一聽(tīng)你的大腦是怎么說(shuō)的,弄清楚對(duì)你 來(lái)說(shuō)哪些做法可行,哪些做法不能奏效。要嘗試新鮮事物。

1 慢一點(diǎn)。你理解的越多,需要記的就越少。

不要光是看看就行了。停下來(lái),好好想一想。書(shū)中提出問(wèn)題的時(shí)候,你不要直接去翻答案??梢约傧胝娴挠腥嗽趩?wèn)你這個(gè)問(wèn)題。你讓大腦想得越深入,就越有可能學(xué)會(huì)并記住它。

2 做練習(xí),自己記筆記。

我們留了練習(xí),但是如果這些練習(xí)的解答也由我們一手包辦,那和有人替你參加考試有什么分別?不要只是坐在那里看著練習(xí)發(fā)呆。拿出筆來(lái),寫(xiě)一寫(xiě)畫(huà)一畫(huà)。大量研究都證實(shí),學(xué)習(xí)過(guò)程中如果能實(shí)際動(dòng)動(dòng)手,這將改善你的學(xué)習(xí)。

3 閱讀“沒(méi)有傻問(wèn)題”。

顧名思義。這些問(wèn)題不是可有可無(wú)的旁注,它們絕對(duì)是核心內(nèi)容的一部分!千萬(wàn)不要跳過(guò)去不看。

4 上床睡覺(jué)之前不要再看別的書(shū),至少不要看其他有難度的東西。

學(xué)習(xí)中有一部分是在你合上書(shū)之后完成的(特別是,要把學(xué)到的知識(shí)長(zhǎng)久地記住,這往往無(wú)法在看書(shū)的過(guò)程中做到)。你的大腦也需要有自己的時(shí)間,這樣才能再做一些處理。如果在這段處理時(shí)間內(nèi)你又往大腦里灌輸了新的知識(shí),那么你剛才學(xué)的一些東西就會(huì)丟掉。

5 講出來(lái),而且要大聲講出來(lái)。

說(shuō)話可以刺激大腦的另一部分。如果你想看懂什么,或者想更牢地記住它,就要大聲地說(shuō)出來(lái)。更好的辦法是,大聲地解釋給別人聽(tīng)。這樣你會(huì)學(xué)得更快,而且可能會(huì)有以前光看不說(shuō)時(shí)不曾有的新發(fā)現(xiàn)。

6 要喝水,而且要大量喝水。

能提供充足的液體,你的大腦才能有最佳表現(xiàn)。如果缺水(可能在你感覺(jué)到口渴之前就已經(jīng)缺水了),學(xué)習(xí)能力就會(huì)下降。

7 聽(tīng)聽(tīng)你的大腦怎么說(shuō)。

注意一下你的大腦是不是負(fù)荷太重了。如果發(fā)現(xiàn)自己開(kāi)始浮光掠影地翻看,或者剛看的東西就忘記了,這說(shuō)明你該休息一會(huì)了。達(dá)到某個(gè)臨界點(diǎn)時(shí),如果還是一味地向大腦里塞,這對(duì)于加快學(xué)習(xí)速度根本沒(méi)有幫助,甚至還可能影響正常的學(xué)習(xí)進(jìn)程。

8 要有點(diǎn)感覺(jué)。

你的大腦需要知道這是很重要的東西。要真正融入到書(shū)中的故事里。為書(shū)里的照片加上你自己的圖題。你可能覺(jué)得一個(gè)笑話很蹩腳,但這總比根本無(wú)動(dòng)于衷要好。

9 編寫(xiě)大量軟件!

要學(xué)習(xí)編程,沒(méi)有別的辦法,只能通過(guò)編寫(xiě)大量代碼。這本書(shū)正是要這么做,編寫(xiě)代碼是一種技巧,要想在這方面擅長(zhǎng),只能通過(guò)實(shí)踐。我們會(huì)給你提供大量實(shí)踐的機(jī)會(huì):毎一章都留有練習(xí),提出問(wèn)題讓你解決。不要跳過(guò)這些練習(xí),很多知識(shí)都是在完成這些練習(xí)的過(guò)程中學(xué)到的。我們?yōu)闅皞€(gè)練習(xí)都提供了答案,如果你實(shí)在做不出來(lái) (很容易被一些小問(wèn)題卡?。?,看看答案也無(wú)妨! 不過(guò)在看答案之前,還是要盡力先自己解決問(wèn)題。而且在讀下一部分之前,一定要確確實(shí)實(shí)地掌握前面的內(nèi)容。

八、重要說(shuō)明

要把這看做是一個(gè)學(xué)習(xí)過(guò)程,而不要簡(jiǎn)單地把它看成是一本參考書(shū)。我們?cè)诎才艃?nèi)容的時(shí)候有意做了一些刪減,只要是對(duì)有關(guān)內(nèi)容的學(xué)習(xí)有妨礙,我們都毫不留情地把這些部分刪掉。另外,第一次看這本書(shū)時(shí),要從第一頁(yè)從頭看起,因?yàn)闀?shū)中后面的部分會(huì)假定你已經(jīng)看過(guò)而且學(xué)會(huì)了前面的內(nèi)容,

1 這本書(shū)特別設(shè)計(jì)為使你能對(duì)Python盡快上手。

既然你想學(xué)真功夫,這里就會(huì)教你真功夫。所以,在這本書(shū)中不會(huì)看到長(zhǎng)篇大論的技術(shù)內(nèi)容,這里不會(huì)用干巴巴的表格羅列Python的操作符,也不會(huì)給出枯燥的操作符優(yōu)先級(jí)規(guī)則。所有這些都沒(méi)有,不過(guò)我們會(huì)精心安排,盡可能涵蓋所有基礎(chǔ)知識(shí),使你能把Python盡快記入大腦并永遠(yuǎn)留住。我們只做了一個(gè)假設(shè),認(rèn)為 你已經(jīng)知道如何用另外某種編程語(yǔ)言編寫(xiě)程序。

2 這本書(shū)面向Python 3。

這本書(shū)中使用Python編程語(yǔ)言的版本3,第1章會(huì)介紹如何得到和安裝Python 3。當(dāng)然,我們并不是完全忽略版本2,這一點(diǎn)你在第8章到第11章就會(huì)發(fā)現(xiàn)。不過(guò)請(qǐng)相信,你會(huì)慶幸使用Python,因?yàn)槟愀静粫?huì)注意到你編程實(shí)現(xiàn)的技術(shù)是在Python 2上運(yùn)行。

3 我們會(huì)直接讓Python投入工作。

從第1章開(kāi)始你就會(huì)用Python做些有用的工作。這里不會(huì)繞彎子,因?yàn)槲覀兿M隳芰⒓从肞ython開(kāi)展工作。

4 書(shū)里的實(shí)踐活動(dòng)不是可有可無(wú)的。

這里的練習(xí)和實(shí)踐活動(dòng)不是可有可無(wú)的裝飾和擺設(shè),它們也是這本書(shū)核心內(nèi)容的一部分。其中有些練習(xí)和活動(dòng)有助于記憶,有些則能夠幫助你理解,還有一些對(duì)于如何應(yīng)用所學(xué)的知識(shí)很有幫助。千萬(wàn)不要跳過(guò)這些練習(xí)不做。

5 我們有意安排了許多重復(fù),這些重復(fù)非常重要。

Head First系列圖書(shū)有一個(gè)與眾不同的地方,這就是,我們希望你確確實(shí)實(shí)地掌握這些知識(shí),另外希望在學(xué)完這本書(shū)之后你能記住學(xué)過(guò)了什么。大多數(shù)參考書(shū)都不太重視重復(fù)和回顧,但是由于這是一本有關(guān)學(xué)習(xí)的書(shū),你會(huì)看到一些概念一而再、再而三地出現(xiàn)。

6 代碼例子盡可能短小精悍。

有讀者吿訴我們,如果査了200行代碼才能找到要理解的那兩行代碼,這很讓人郁悶。這本書(shū)里大多數(shù)例子往往都開(kāi)門(mén)見(jiàn)山,作為上下文的代碼會(huì)盡可能的少,這樣你就能一目了然地看到哪些東西是需要你學(xué)習(xí)的。別指望這些代碼很健壯,甚至別指望它們是完整的。我們特意把這些例子寫(xiě)得很簡(jiǎn)單,以便于你學(xué)習(xí),它們的功能 往往不太完備。

我們?cè)诰W(wǎng)上放了大量代碼示例,你可以根據(jù)需要復(fù)制和粘貼。可以從以下兩個(gè)網(wǎng)址下載:

http://www.headfirstlabs.com/books/hjpython/

http:ffpython.itcarlow.ie

6 “頭腦風(fēng)暴”練習(xí)沒(méi)有答案。

有一些頭腦風(fēng)暴練習(xí)根本沒(méi)有正確的答案,對(duì)于另外一些練習(xí),頭腦風(fēng)暴實(shí)踐活動(dòng)中有一部分學(xué)習(xí)過(guò)程就是讓你確定你的答案是否正確以及在何種情況下正確。在其中一些頭腦風(fēng)暴練習(xí)中,你會(huì)得到一些提示來(lái)指出正確的方向。

九 目錄概覽

0? ? ? 引子 xxiii

1 初識(shí)Python:人人都愛(ài)列表 1

2 共享你的代碼:函數(shù)模塊 33

3 文件與異常:處理錯(cuò)誤 73

4 持久存儲(chǔ):數(shù)據(jù)保存到文件 105

5 推導(dǎo)數(shù)據(jù):處理數(shù)據(jù)! 139

6 定制數(shù)據(jù)對(duì)象:打包代碼與數(shù)據(jù) 173

7 Web開(kāi)發(fā):集成在一起 213

8 移動(dòng)應(yīng)用開(kāi)發(fā):小設(shè)備 255

9 管理你的數(shù)據(jù):處理輸入 293

10 擴(kuò)展你的Web應(yīng)用:來(lái)真格的 351

11 處理復(fù)雜性:數(shù)據(jù)加工 397

i 其他:(我們沒(méi)有談到的)十大問(wèn)題 435

索引? ? 447

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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