最近迷上了python,有推薦的學習地址以及編譯器嗎?
或者有可以指導我的老師嗎?
題主這個樣子可不像是「迷上了Python」,只是「覬覦了Python」吧?因為稍微對Python有些瞭解的人,是不會問出這個問題的……所以需要先科普一下某些基本概念
Python是一門動態語言,或者也算是一種腳本語言,所以「編譯器」這個東西對於Python而言是非常曖昧的。如果題主對語言第一反應是需要一個編譯器的話,那麼,需要稍微更正一下觀念,初學者學習Python根本不需要什麼「編譯器」,因為它不一定需要編譯,不依賴於編譯器。
對於Python而言交互編程環境纔是重點,Python設計上是可以像我們命令行中打命令那樣,一邊敲代碼一邊看每一行代碼的結果,這種編程稱為「互動式編程」。現在很多語言都有「互動式編程」環境,事實證明這可以大幅降低編程的學習門檻,而Python的互動式編程是目前最成熟的那一陣營,已經發展了很多很多年。
一般我們常說的Python是指Python基金會官方的CPython實現,Python還有很多種類的實現但是主要是平臺不同,這裡就不展開了,一開始學習,當然是先學官方的、通用的那套標準,一切都以CPython來說。
對於初學者,有一本書個人是極力推崇的,名叫《Dive Into Python》,這本書是開源的,也有中文翻譯。
深入 Python 3?www.ttlsa.com
Python由於歷史原因存在著兩個不完全兼容的分支,Python 2.X 和 Python 3.X,現在學Python的話,不管別人怎麼說,貓絕對不贊成任何人再去從2.X學起,一律從3.X開始,大多數平臺上都把這個版本叫做Python 3或者Python 3000。上面《Dive Into Python》也分為兩個版本,貓貼的是Python 3的版本。
《Dive Into Python》是一本指南類的書,它會用很多實例帶初學者一點點瞭解Python的語言特徵,這些實例都和CPython互動式命令行對應,建議是打開命令行,一邊看一邊在寫,一般來說一個下午就能上手了,是非常快的。
不過《Dive Into Python》編寫比較早,也有不全面的地方,比如沒有對修飾器、非同步這些東西進行介紹,但是對於入門而言是非常嚴謹且友好的。跨入Python的大門先迷上它,剩下的學習就順理成章了,Python非常易學,這一點無需擔心。
CPython核心就一個命令:python
安裝好CPython之後,命令行直接輸入python就能打開交互編程環境在「&>&>&>」提示符後一行一行輸入你的代碼吧(多數Linux上python默認代表Python2.X,而Python3.X對應命令為python3)。
如果你把python代碼寫到一個文本文件裏的話,那麼命令行輸入:
python 文件名
即可執行該文件,這個和普通的腳本語言沒有啥區別。
Python也不是完全解釋執行的腳本語言,它有位元組碼和虛擬機的結構,位元組碼一般會生成 .pyc 後綴的影子文件,對這塊的瞭解需要先熟悉Python本身,這裡也不展開討論。
等到《Dive Into Python》都已經實踐1~2遍了,那基本上就算是入門了,更多的參考資料建議還是看Python基金會官網:
Welcome to Python.org?www.python.org官方的 Language Reference 有對語法的更精細描述,官方的 Library Reference 是最好的基礎庫手冊。
語言只是一個工具,上手很容易,尤其是 Python 這樣簡潔易學、注重實踐的語言,更多還是要用它做項目開發,用代碼堆砌出實踐經驗來。
另外Python有很多有IDE,初學者也可以嘗試從IDE入手,比如大名鼎鼎的Pycharm。
IDE不是必須的,熟練掌握Python互動式編程環境個人覺得非常重要,因為它可以非常快的幫你解決一個人使用計算機所需要解決的幾乎一切大小問題,本身是個極其實用的工具。
我可以教,要付學費,白嫖的請繞道。
很多地方都有學習的地方
Bilibili
實驗樓
慕課網
網易雲課堂
中國大學mooc
個人覺得,想學習的話,還是一起共同討論學習,那樣學習速度快,自學的話,有問題不知道怎麼解決也很麻煩
一起學習嘛
不知道你是要學python還是想了解cpython的實現,有本書叫《Python源碼剖析》,比較老了但是cpython源代碼核心模式變化不大,讀一下會收貨不小。我之前還把python2.7,numpy,matplotlib,scipy移植到了IOS上。本來還想搞一下python3以上的移植,沒什麼空就算了,按理不難。
需要考試帶入門,可以看網上的免費視頻和電子書,也可以報一個培訓班
廖雪峯的教程先看一遍唄
推薦閱讀: