> 本書出處:https://github.com/qiwsir/StarterLearningPython
> 作者:老齊
我已經在[《零基礎學Python(第一版)》](http://www.hmoore.net/kancloud/python-basic)中寫了一個專門講述Python故事的——[嘮叨一些關于Python的事情](https://github.com/qiwsir/ITArticles/blob/master/BasicPython/001.md)——章節,今天再寫類似的標題,不打算完全重復原來的,只是把部分認為重要的或者不可或缺的東西復制過來。
## [](https://github.com/qiwsir/StarterLearningPython/blob/master/01.md#越來越火的python)越來越火的Python
在前幾年(before 2011),我跟一些朋友介紹python的時候,看到的常常是一種很詫異的眼神,通常會聽到:
~~~
“那時什么東西?”
“解釋性語言會不會很慢?”
“沒聽說誰用呀?”
“能像php,java,c#那樣用來做網站嗎?”
“什么?你說的是pascal?你還在用這個老古董?”
“哦,我聽說過,有一些老外在用,不過我們這還沒有人用呢。”
~~~
時過境遷,現在已經有了很大變化。
2014年初,我開始寫《零基礎學Python》系列,就得到了很多朋友的支持,而且吸引了不少學習Python的朋友,特別是在我的那個QQ群里面,集中了不少學習者和愛好者,當然也有高手深藏不露。
~~~
獲得我發布的有關Python信息途徑:
1\. 加入QQ群,里面可以跟很多人交流。QQ群:Code Craft:26913719
2\. 關注我的新浪微博,名稱是:老齊Py。地址:http://weibo.com/qiwsir
3\. 到github.com上直接follow我,名稱是:qiwsir。地址:https://github.com/qiwsir
4\. 經常關注我的網站:www.itdiffer.com
~~~
特別是今年(2015年)一開始,在QQ群(26913719)里面,就有朋友說,他在上海找工作,看到好多公司都要有Python開發經驗的。也有朋友委托我推薦Python程序員的。
從我自己的經歷中也感受到,不僅僅是國外,國內也如此,用Python的領域越來越多,找Pythoner的公司和機構也越來越多了。
所以,學習Python,挺好(包括女生,也是“挺”好)。
還要補充一點,Python能夠滿足現在最時髦的“大數據”方面的開發需要,要想了解,推薦閱讀[《大數據全棧式開發語言 – Python》](http://insights.thoughtworkers.org/full-stack-python/)
## [](https://github.com/qiwsir/StarterLearningPython/blob/master/01.md#需要什么基礎嗎)需要什么基礎嗎
這是很多初學者都會問的一個問題。誠然,在計算機方面的基礎越好,對學習任何一門新的編程語言,都是更有利的。如果,你在編程語言的學習上屬于零基礎,也不用擔心,不管用哪門語言作為學習編程的入門語言,總要有一個開始吧。
就我個人來看,Python是比較適合作為學習編程的入門語言的(作為學習編程的入門語言,我現在最不理解的是用C,因為很多曾經立志學習編程的人學了C語言之后,才知道自己不適合編程。難道是用C來篩選這個行業的從業者嗎?)。總之,不用擔心自己的所謂基礎問題。
看我這個教程的標題,就是強調“零基礎”的。
不僅我這么認為,美國有不少高校也這么認為,紛紛用Python作為編程專業甚至是非編程專業的大學生入門語言。
最后的結論是:學習python,你不用擔心基礎問題。**特別是看我的教程,我的目標就是要跟你一起從零基礎開始,直到高手境界**。
## [](https://github.com/qiwsir/StarterLearningPython/blob/master/01.md#優雅的python)優雅的Python
Python號稱是優雅的。但是這種說法仁者見仁智者見智。比如經常聽到大師們說“數學美”,是不是誰都能體驗到呢?不見得吧。
所以,是不是優雅,是不是簡單,是不是明確,只有“誰用誰知道”。
不過,我特別喜歡下面這句話:**人生苦短,我用Python**。意思就是說,python能夠提高開發效率,讓你短暫的人生能夠除了工作之外,還有更多的時間休息、娛樂或者別的什么。
或許有的人不相信,那么也只有“誰用誰知道了”。
## [](https://github.com/qiwsir/StarterLearningPython/blob/master/01.md#跟別的語言比較)跟別的語言比較
“如果你遇到的問題無法用Python解決,這個問題也不能用別的語言解決。”——這是我向一些徘徊在Python之外的人常說的,是不是有點夸張了呢?
最近看到了一篇文章,[《如果編程語言是女人》](http://www.vaikan.com/if-programming-languages-are-woman/),我轉載如下(考慮到篇幅所限,所了適當刪改,非刪減請通過連接查看原文):
[](https://github.com/qiwsir/StarterLearningPython/blob/master/0images/01.jpg)
> PHP是你的豆蔻年華的心上人,她是情竇初開的你今年夏天傻乎乎的追求的目標。玩一玩可以,但千萬不要投入過深,因為這個女孩有嚴重的問題。
>
> Ruby是腳本家族中一個非常漂亮的孩子。第一眼看她,你的心魄就會被她的美麗攝走。她還很有有趣。起初她看起來有點慢,不怎么穩定,但近些年來她已經成熟了很多。
>
> Python 是Ruby的一個更懂事的姐姐。她優雅,新潮,成熟。她也許太過優秀。很多小伙都會說“嘿,兄弟,你怎么可能不愛上Python呢!?”。沒錯,你喜歡Python。你把她當成了一個脾氣和浪漫都退燒了的Ruby。
>
> Java是一個事業成功的女人。很多在她手下干過的人都感覺她的能力跟她的地位并不般配,她更多的是通過技巧打動了中層管理人員。你也許會認為她是很有智慧的人,你愿意跟隨她。但你要準備好在數年里不斷的聽到“你用錯了接口,你遺漏了一個分號”這樣的責備。
>
> C++ 是Java的表姐。她在很多地方跟Java類似,不同的是她成長于一個天真的年代,不認為需要使用“保護措施”。當然,“保護措施”是指自動內存管理。你以為我指的是什么?
>
> C 是C++的媽媽。對一些頭發花白的老程序員說起這個名稱,會讓他們眼睛一亮,產生無限回憶。
>
> Objective C C語言家族的另外一個成員。她加入了一個奇怪的教會,不愿意和任何教會之外的人約會。
雖然是娛樂,或許有爭議,權當參考吧。
## [](https://github.com/qiwsir/StarterLearningPython/blob/master/01.md#the-zen-of-python)The Zen of Python
這就是著名的《Python之禪》。
> Beautiful is better than ugly.
>
> Explicit is better than implicit.
>
> Simple is better than complex.
>
> Complex is better than complicated.
>
> Flat is better than nested.
>
> Sparse is better than dense.
>
> Readability counts.
>
> Special cases aren't special enough to break the rules.
>
> Although practicality beats purity.
>
> Errors should never pass silently.
>
> Unless explicitly silenced.
>
> In the face of ambiguity, refuse the temptation to guess.
>
> There should be one-- and preferably only one --obvious way to do it.
>
> Although that way may not be obvious at first unless you're Dutch.
>
> Now is better than never.
>
> Although never is often better than?*right*?now.
>
> If the implementation is hard to explain, it's a bad idea.
>
> If the implementation is easy to explain, it may be a good idea.
>
> Namespaces are one honking great idea -- let's do more of those!
## [](https://github.com/qiwsir/StarterLearningPython/blob/master/01.md#感謝guido-van-rossum)感謝Guido van Rossum
Guido van Rossum 是值得所有pythoner感謝和尊重的,因為他發明了這個優雅的編程語言。他發明python的過程是那么讓人稱贊和驚嘆,顯示出牛人的風采。
> 1989年的圣誕節期間,吉多·范羅蘇姆為了在阿姆斯特丹打發時間,決心開發一個新的腳本解釋程序,作為ABC語言的一種繼承。之所以選中Python作為程序的名字,是因為他是一個蒙提·派森的飛行馬戲團的愛好者。ABC是由吉多參加設計的一種教學語言。就吉多本人看來,ABC這種語言非常優美和強大,是專門為非專業程序員設計的。但是ABC語言并沒有成功,究其原因,吉多認為是非開放造成的。吉多決心在Python中避免這一錯誤,并取得了非常好的效果,完美結合了C和其他一些語言。
這段故事的英文刊載在:[https://www.python.org/doc/essays/foreword/](https://www.python.org/doc/essays/foreword/)
## [](https://github.com/qiwsir/StarterLearningPython/blob/master/01.md#新版的設想)新版的設想
我寫《零基礎學python(第二版)》,是承接第一版的,并在第一版基礎上,做了較大量的修改,比如每個章節的標題,現在改為更為直接的描述,而不是用那種文藝范寫了,因為這樣不僅更明確,而且還能用于以后備查。
此外,我會繼續原有的大家認可的風格,兼顧零基礎和后續的發展。特別是要在里面穿插如更多的項目例子。
- 第零章 預備
- 關于Python的故事
- 從小工到專家
- Python安裝
- 集成開發環境
- 第壹章 基本數據類型
- 數和四則運算
- 除法
- 常用數學函數和運算優先級
- 寫一個簡單的程序
- 字符串(1)
- 字符串(2)
- 字符串(3)
- 字符串(4)
- 字符編碼
- 列表(1)
- 列表(2)
- 列表(3)
- 回顧list和str
- 元組
- 字典(1)
- 字典(2)
- 集合(1)
- 集合(2)
- 第貳章 語句和文件
- 運算符
- 語句(1)
- 語句(2)
- 語句(3)
- 語句(4)
- 語句(5)
- 文件(1)
- 文件(2)
- 迭代
- 練習
- 自省
- 第叁章 函數
- 函數(1)
- 函數(2)
- 函數(3)
- 函數(4)
- 函數練習
- 第肆章 類
- 類(1)
- 類(2)
- 類(3)
- 類(4)
- 類(5)
- 多態和封裝
- 特殊方法(1)
- 特殊方法(2)
- 迭代器
- 生成器
- 上下文管理器
- 第伍章 錯誤和異常
- 錯誤和異常(1)
- 錯誤和異常(2)
- 錯誤和異常(3)
- 第陸章 模塊
- 編寫模塊
- 標準庫(1)
- 標準庫(2)
- 標準庫(3)
- 標準庫(4)
- 標準庫(5)
- 標準庫(6)
- 標準庫(7)
- 標準庫(8)
- 第三方庫
- 第柒章 保存數據
- 將數據存入文件
- mysql數據庫(1)
- MySQL數據庫(2)
- mongodb數據庫(1)
- SQLite數據庫
- 電子表格
- 第捌章 用Tornado做網站
- 為做網站而準備
- 分析Hello
- 用tornado做網站(1)
- 用tornado做網站(2)
- 用tornado做網站(3)
- 用tornado做網站(4)
- 用tornado做網站(5)
- 用tornado做網站(6)
- 用tornado做網站(7)
- 第玖章 科學計算
- 為計算做準備
- Pandas使用(1)
- Pandas使用(2)
- 處理股票數據
- 附:網絡文摘
- 如何成為Python高手
- ASCII、Unicode、GBK和UTF-8字符編碼的區別聯系