學(xué)習(xí)Python編程的19個(gè)資源
用Python編寫(xiě)代碼一點(diǎn)都不難,事實(shí)上它一直被贊譽(yù)為最容易學(xué)的編程語(yǔ)言。如果你準(zhǔn)備學(xué)習(xí)web開(kāi)發(fā), Python是一個(gè)不錯(cuò)的開(kāi)始,甚至想做游戲的話(huà),用Python來(lái)開(kāi)發(fā)游戲的資源也有很多。這是快速學(xué)習(xí)這門(mén)語(yǔ)言的途徑之一。
許多程序員都把Python作為編程之旅的開(kāi)始,然后是像PHP和Ruby這樣的語(yǔ)言。它也是2014年最熱門(mén)的web開(kāi)發(fā)語(yǔ)言之一,并極力推薦學(xué)習(xí)。但是,Python應(yīng)該怎么學(xué)呢?應(yīng)該從哪里開(kāi)始?
我來(lái)為你解決這個(gè)問(wèn)題,因?yàn)槲易约簩W(xué)習(xí)編程和開(kāi)始做開(kāi)發(fā)的時(shí)候也依靠了很多這里的資源。當(dāng)然這僅僅是一個(gè)友好的建議,***的方法還是通過(guò)實(shí)踐去學(xué)習(xí),這里推薦的一些書(shū)和資源只是為了指引你走往正確的方向。
剛開(kāi)始學(xué)習(xí)的時(shí)候可能會(huì)特別令人沮喪,一旦你學(xué)完了基礎(chǔ),之后的東西對(duì)你來(lái)說(shuō)就很自然了,你都不需要思考就知道要怎么做。
1、Python for Beginners
如果你的Python開(kāi)發(fā)之旅有一段時(shí)間了,這門(mén)課程可能是一個(gè)很好的開(kāi)始。Python for Beginners課程是由Alex Bowers講授的最全面的Python課程之一,這套網(wǎng)絡(luò)教程非常容易學(xué)習(xí)。是的,它需要付一定的費(fèi)用,但你是想單獨(dú)學(xué)習(xí),還是和其他30000名學(xué)生一起學(xué)?
報(bào)名本課程的好處是你將被授權(quán)訪(fǎng)問(wèn)一個(gè)只有付費(fèi)會(huì)員的論壇, Alex老師自己就駐扎在那,并且很樂(lè)意盡可能地幫你解決Python的問(wèn)題。我的意思是,在這個(gè)清單里任何的資源都是值得的,因?yàn)槟阃度肓艘恍┏杀绢~外收獲了與人溝通的感覺(jué)會(huì)超越一切。
你可以使用優(yōu)惠碼:CODECONDO——它會(huì)給你一個(gè)固定的75%的折扣,但激活只能在2014年9月3日之前——所以要快點(diǎn),您可以隨時(shí)購(gòu)買(mǎi)的這個(gè)課程然后用于以后的學(xué)習(xí),不要把錢(qián)浪費(fèi)在這筆交易上!
2、Learn Python The Hard Way (笨辦法學(xué)Python)
這本書(shū)絕對(duì)是學(xué)習(xí)Python最簡(jiǎn)單的方法。你會(huì)被如此簡(jiǎn)單的基礎(chǔ)學(xué)習(xí)感到震驚,真實(shí)地感受到自己的學(xué)習(xí)歷程,一步一步地獲取新的知識(shí)。我也感到它非常鼓勵(lì)學(xué)習(xí)者去嘗試并創(chuàng)造出自己的程序。
代碼可能會(huì)很少,但是它們肯定會(huì)有助于你更好的理解語(yǔ)言本身和語(yǔ)法。Python非常的流行,所以當(dāng)你遇到了問(wèn)題時(shí),在類(lèi)似Stack Exchange這樣的網(wǎng)站里有可能會(huì)找到答案,遇到問(wèn)題需要解決的話(huà)盡管地Google吧。
你會(huì)學(xué)到如何去:
- 在全平臺(tái)上安裝Python環(huán)境
- 寫(xiě)Python程序
- 理解Python語(yǔ)法和文檔
- 像程序員一樣思考
- 還有更多的東西
本書(shū)的HTML在線(xiàn)版本是完全免費(fèi)的,大部分人使用的都是在線(xiàn)版。我希望你購(gòu)買(mǎi)完整的書(shū)或者給予一些捐贈(zèng),畢竟作者花了很大的力氣來(lái)完成它。如果你感覺(jué)視頻更容易學(xué)習(xí)的話(huà),它的高級(jí)版里就包含了視頻。
3、The Python Challenge
如果你的編程生涯中從沒(méi)做過(guò)這樣的挑戰(zhàn),這可能會(huì)有點(diǎn)難度。但是配和上面介紹的那本書(shū)的話(huà)也不是很難,你應(yīng)該嘗試一下。它有33個(gè)關(guān)卡(謎題),你可以用Python編程技巧解決。
幾百萬(wàn)的人都在試著解決這個(gè),即使你不能完成所有的關(guān)卡,你也會(huì)將學(xué)到很多新的東西,尤其是批判性思維和發(fā)散思維。你的大腦會(huì)過(guò)熱,但這是在編程!
4、Learn Python Programming @ Codecademy
你可能看到許多“大牛”程序員罵這個(gè)網(wǎng)站,但那并不重要。我們想要做的是看看或者測(cè)試一門(mén)編程語(yǔ)言的基本語(yǔ)法是怎么執(zhí)行的,以及調(diào)用函數(shù)時(shí)做了些什么,除了簡(jiǎn)單地輸出‘Hello World!’。
在這個(gè)Codecademy的課程中你將會(huì)學(xué)到如何使用文件和循環(huán),什么是函數(shù)以及他們能用來(lái)做什么。這些都是非?;A(chǔ)的,但是對(duì)初學(xué)者來(lái)說(shuō)都是很好的東西。當(dāng)需要幫助時(shí)有一個(gè)用來(lái)交流的論壇,但所有的東西都應(yīng)該在你理解的范圍之內(nèi)。
你不需要安裝任何工具,如果你想在你自己的電腦上重寫(xiě)一遍代碼以便更好地理解它,你可能唯一需要的就是一個(gè)Notepad++編輯器。我就是這樣做的,并且我向所有想學(xué)習(xí)編程的人都推薦Codecademy,不管是Python還是其他的語(yǔ)言。
5、Intro to Computer Science @ Udacity
Udacity提供了一個(gè)很棒的免費(fèi)課程,引你進(jìn)入Python編程和學(xué)習(xí)關(guān)于搜索引擎的許多東西,以及如何編寫(xiě)你自己的小型網(wǎng)絡(luò)爬蟲(chóng)。它的確是一個(gè)值得參與的課程,并且還提供了額外的指導(dǎo)和社區(qū)支持。
你可以報(bào)名成為付費(fèi)學(xué)生得到導(dǎo)師的指導(dǎo),并且可以在課程結(jié)束得到一個(gè)證書(shū),或者你可以自己使用免費(fèi)的課件學(xué)習(xí),遺憾的是付費(fèi)課堂的容量有限,所以你申請(qǐng)后需要加入名單等待。
它總共有11個(gè)課程,每一個(gè)都有講解非常深入的文檔。去它的官方主頁(yè)查看更多的信息或者你想問(wèn)的問(wèn)題的答案。
6、Google’s Python Class
Google它本身就被一大堆Python代碼驅(qū)動(dòng)著,只有他們提供社區(qū)支持并且愿意幫助其他人學(xué)習(xí)這門(mén)語(yǔ)言才更有意義。這是我曾經(jīng)最喜歡看的指南和課程之一。它真的很詳細(xì),而且視頻適合初學(xué)者,觀看起來(lái)也很有趣。
去看幾分鐘它的***堂課,看看你是否喜歡那個(gè)老師,然后決定是否開(kāi)始學(xué)習(xí)Python!官方主頁(yè)有這些練習(xí)題和例題的所有鏈接。
7、A Byte of Python
非常像LPTHW(笨辦法學(xué)Python),但是在如何制定完整的學(xué)習(xí)計(jì)劃并實(shí)施,以及如何邁出***步上提供了更深層次的引導(dǎo),而不會(huì)讓你喪失自信心。對(duì)于那些想學(xué)Python的人來(lái)說(shuō)它被認(rèn)為是***的初學(xué)者教程之一,當(dāng)然你要先看看前幾章,是否喜歡它的寫(xiě)作風(fēng)格。
8、Think Python
Think Python是一個(gè)面向Python初學(xué)者的手冊(cè)。它從編程的基本概念教起,非常詳細(xì)地定義了所有***次會(huì)遇到的術(shù)語(yǔ),并且很有邏輯地展現(xiàn)新的概念。像遞歸和面向?qū)ο筮@樣大一點(diǎn)的知識(shí)板塊被分成了一系列更小的步驟,穿插于課程幾個(gè)章節(jié)。
在這個(gè)鏈接里你會(huì)發(fā)現(xiàn)有大量的示例代碼。它是最為專(zhuān)業(yè)的書(shū)之一,它有一個(gè)很?chē)?yán)肅的原則: “像計(jì)算機(jī)科學(xué)家一樣思考”。它需要將近40美元才能買(mǎi)到,但是你可以下載免費(fèi)的PDF和HTML版本。如果從頭開(kāi)始學(xué)Python的話(huà),肯定會(huì)從它上面得到好處。
9、Python at Learnstreet
你可能會(huì)想有個(gè)網(wǎng)站提供如何在他們頁(yè)面上添加HTML代碼的課程,哈哈。嚴(yán)肅一點(diǎn)地說(shuō),Learnstreet提供了很棒的Python交互式學(xué)習(xí)教程,就像這篇文章所說(shuō)的所有東西一樣,它對(duì)初學(xué)者非常友好。如果你遇到了問(wèn)題,***用Google去搜索。
我最喜歡Learnstreet的一點(diǎn)是每個(gè)練習(xí)后面都有許多提示和解釋?zhuān)@示在你編寫(xiě)代碼的同一個(gè)界面里。
10、The New Boston
如果你更喜歡使用視頻學(xué)習(xí),我不確定是否還有比The New Boston的Python系列視頻教程更全面的了,許多其他的編程語(yǔ)言也可以在他們的YouTube頻道里找到。
它唯一的缺點(diǎn)就是沒(méi)有可以閱讀或者下載的資料,你只能看視頻。我是那種不能忍受一直盯著視頻看的程序員,這可能與我選擇Google的Python課程有關(guān),但它們實(shí)在太有趣了。
11、Python @ Coursera
這個(gè)課程是為從來(lái)沒(méi)接觸過(guò)編程的人準(zhǔn)備的。你只需要小學(xué)的數(shù)學(xué)水平就可以了:懂簡(jiǎn)單的數(shù)學(xué)方程和算術(shù)優(yōu)先級(jí),以及像f(x) = x + 5這樣的函數(shù)。
它在十周內(nèi)應(yīng)該可以學(xué)完,每周大概花10小時(shí)來(lái)完成課后作業(yè)。如果你有時(shí)間來(lái)做這個(gè),并且不會(huì)感到很累,我推薦你注冊(cè)并完成這個(gè)課程,它會(huì)鞏固你的知識(shí),并可以結(jié)合上面介紹的任何一個(gè)資源來(lái)更好地理解 Python。
12、Pythonspot
Pythonspot是一個(gè)綜合教程,劃分了很多不同類(lèi)別的知識(shí)板塊,首先你將擁有初學(xué)者資源來(lái)幫你開(kāi)始Python的學(xué)習(xí),然后你繼續(xù)保持前進(jìn)你能學(xué)到更多關(guān)于使用Python開(kāi)發(fā)web,創(chuàng)建圖形界面,開(kāi)發(fā)游戲的內(nèi)容,到那時(shí)你可以準(zhǔn)備學(xué)習(xí)一些更高級(jí)的板塊,像網(wǎng)絡(luò)等等。這些都在一個(gè)地方,非常容易使用。
13、Python Practice Book
從根本上說(shuō),這是Anand Chitipothu在他講授Python課程時(shí)使用的資源,但即便你不與Anand本人一起學(xué)習(xí),你仍然可以利用這個(gè)資源來(lái)獲取Python在不同角度的見(jiàn)解,以及看到不同開(kāi)發(fā)者的觀點(diǎn)。
14、Python Tutor
我認(rèn)為這是新手程序員近期能夠上手的***的項(xiàng)目之一,Python Tutor都是在教你當(dāng)執(zhí)行你寫(xiě)的代碼時(shí)到底發(fā)生了些什么。清楚地了解到如何寫(xiě)一段程序,能夠理解后臺(tái)程序的每個(gè)命令都是截然不同的。你可以使用自己寫(xiě)的代碼,也可以使用平臺(tái)提供的代碼。
15、Real Python
雖然這是一個(gè)收費(fèi)的資源,但***的評(píng)論看起來(lái)還是相當(dāng)不錯(cuò)的,所以不管怎樣我決定加上這一條。在Real Python需要花費(fèi)60美元來(lái)開(kāi)始你的學(xué)習(xí),將會(huì)有超過(guò)1300頁(yè)的內(nèi)容和10個(gè)多小時(shí)的視頻供你訪(fǎng)問(wèn),還包括以后可以免費(fèi)更新。你能得到來(lái)自Real Python團(tuán)隊(duì)的導(dǎo)師的幫助,不過(guò)這需要額外的費(fèi)用。以及博客里有適量與代碼相關(guān)的教程能夠給你幫助。
16、Full Stack Python
你能比較熟練地使用Python了,但是你不知道接下來(lái)該走什么樣的方向?這個(gè)網(wǎng)絡(luò)課程就是為你解決這個(gè)問(wèn)題的,通過(guò)給你一個(gè)真正的項(xiàng)目去做,幫助你理解怎樣用你學(xué)到的Python知識(shí)建立一個(gè)web應(yīng)用程序和網(wǎng)站。學(xué)會(huì)怎樣積累一些真正的知識(shí)。
17、Invent with Python
教你怎樣使用Python創(chuàng)造一款你自己的電腦游戲。每章為你提供了一個(gè)新游戲完整的源代碼,通過(guò)這些例子教你編程的概念。它在網(wǎng)站上可以免費(fèi)閱讀,或者在亞馬遜購(gòu)買(mǎi)。
18、PythonLearn
你是一個(gè)對(duì)信息學(xué)感興趣的家伙嗎?整個(gè)網(wǎng)站的資源都圍繞著確切的話(huà)題,所以如果你感興趣的話(huà),去看看可能會(huì)是一件好事。
19、Dive Into Python3
遲早有一天,大多數(shù)的東西都會(huì)使用Python3來(lái)構(gòu)建,盡管Python2仍然非常穩(wěn)定并被大量使用,但Python3在過(guò)去的兩年里確實(shí)發(fā)展的非常完整了。這本在線(xiàn)書(shū)籍所有的內(nèi)容都在幫助你理解Python3是什么,以及如何***地掌握它。
在哪學(xué)習(xí)Python?
事實(shí)證明我自己嘗試了這里大部分的課程,我其實(shí)希望有更多的資源和鏈接加入到這個(gè)列表里來(lái),但我們只是看一下主要的,還有這么多的新知識(shí)是你需要學(xué)習(xí)的。你有什么編程經(jīng)驗(yàn)?你想用你新學(xué)到的技能做些什么?我認(rèn)為任何想建立專(zhuān)業(yè)知識(shí)體系的人首先應(yīng)該明確自己想做什么,然后研究一個(gè)項(xiàng)目直到做完。這樣做的好處是你會(huì)學(xué)到具體的東西,以后開(kāi)發(fā)一個(gè)類(lèi)似的項(xiàng)目會(huì)更容易。