小白如何入門(mén)Python? 制作一個(gè)網(wǎng)站為例
首先最重要的問(wèn)題是為什么要學(xué)習(xí)python?這個(gè)問(wèn)題這個(gè)將指導(dǎo)你如何學(xué)習(xí)Python和學(xué)習(xí)的方式。
以你最終想制作一個(gè)網(wǎng)站為例。從一個(gè)通用的學(xué)習(xí)資源列表開(kāi)始不僅會(huì)消磨你的激情,而且你獲得的知識(shí)很難應(yīng)用,我曾經(jīng)嘗試過(guò)不通過(guò)上下文和具體應(yīng)用來(lái)學(xué)習(xí)編程,但是我?guī)缀鯖](méi)有獲得任何有用的技能。
當(dāng)我3年前學(xué)習(xí)python時(shí),我想創(chuàng)建一個(gè)網(wǎng)站。這對(duì)于任何一個(gè)學(xué)習(xí)Pyhon人來(lái)說(shuō),不足為奇。
1、找到是什么激勵(lì)你
找到并保持你的動(dòng)機(jī)是關(guān)鍵-我高中睡了很多個(gè)的程序設(shè)計(jì)課,因?yàn)樗蛔屛覀冇涀×艘欢颜Z(yǔ)法。另一方面,當(dāng)我需要學(xué)習(xí)python來(lái)制作一個(gè)自動(dòng)作文評(píng)分算法時(shí),我連續(xù)熬夜幾個(gè)晚上來(lái)學(xué)習(xí)和迭代。
學(xué)習(xí)中很少涉及動(dòng)機(jī)--你通常只是跟隨別人給的教程去嘗試做一些東西。但是,python的偉大之處在于,你幾乎可以開(kāi)發(fā)所有的東西,從移動(dòng)應(yīng)用程序到游戲到高級(jí)機(jī)器學(xué)習(xí)算法。無(wú)論你是否感興趣,你都可以在python中構(gòu)建它,并且可能獲得了一個(gè)很好的入門(mén)教程。
選擇一個(gè)或兩個(gè)你感興趣的東西,并堅(jiān)持下去-你會(huì)在這個(gè)領(lǐng)域開(kāi)發(fā)很多項(xiàng)目。
以下是一些示例區(qū)域,但可以隨意添加:
- 網(wǎng)站
- 游戲
- 數(shù)據(jù)科學(xué)/機(jī)器學(xué)習(xí)
2、了解一些基本的python語(yǔ)法
除非你知道基本的語(yǔ)法,否則很難實(shí)現(xiàn)任何東西。即便如此,也不要花太長(zhǎng)時(shí)間在上面。你的目標(biāo)是開(kāi)展你感興趣的項(xiàng)目,學(xué)習(xí)基本的語(yǔ)法就足夠了
作為參考,我花了不到一周的時(shí)間在codecademy上,學(xué)習(xí)了大概30%的語(yǔ)法。這足以可以開(kāi)始一個(gè)項(xiàng)目了
一些可以幫助你的資源:
Codecademy --很適合學(xué)習(xí)基本語(yǔ)法
Learn python the hard way--一本教了很多python概念的書(shū)。
Dataquest.io --這是我學(xué)習(xí)Python的第一個(gè)網(wǎng)站。它的重點(diǎn)是教你在數(shù)據(jù)科學(xué)中使用python,但它可以教會(huì)你所有的基本語(yǔ)法。
Python教程--主要python站點(diǎn)上的教程。
我再次強(qiáng)調(diào),前期不要花太多時(shí)間在基本語(yǔ)法上。你越快開(kāi)展項(xiàng)目工作,你將學(xué)的越快。當(dāng)你遇到問(wèn)題卡住的時(shí)候,你還是可以回去看看語(yǔ)法的。
3、進(jìn)行結(jié)構(gòu)化項(xiàng)目
除非你真正的把你學(xué)到的東西應(yīng)用在實(shí)際項(xiàng)目上,否則你學(xué)到的知識(shí)將會(huì)慢慢流失。項(xiàng)目是一個(gè)很好的學(xué)習(xí)方式,因?yàn)樗梢源龠M(jìn)你的能力,讓你知道如何應(yīng)用你所學(xué)到的技能,并且可以讓你在找下一份工作時(shí)有東西可以拿出來(lái)展示。
當(dāng)你開(kāi)始工作時(shí),更多帶有指導(dǎo)的結(jié)構(gòu)化項(xiàng)目對(duì)你幫助很大。這里有幾個(gè)想法:
游戲
Pygame tutorials --pygame(用于制作游戲的python庫(kù))有一個(gè)很好的教程列表
Making games with pygame--這本書(shū)看起來(lái)像是通過(guò)制作游戲這樣一個(gè)很好的方法來(lái)學(xué)習(xí)python
網(wǎng)站
Flask tutorial --官方flask教程(簡(jiǎn)單的python web框架)。
Bottle tutorial--Bottle教程(更簡(jiǎn)單的python web框架)。
How To Tango With Django 1.7--個(gè)django的指南(有些復(fù)雜的python web框架)
數(shù)據(jù)科學(xué)
Dataquest.io --以交互方式教你Python和數(shù)據(jù)科學(xué)。你可以分析一系列從CIA文件到NBA球員的有趣的統(tǒng)計(jì)數(shù)據(jù)數(shù)據(jù)集。
Scikit-learn 文檔--Scikit-learn有一些很好的文檔和教程(python的主要機(jī)器學(xué)習(xí)庫(kù))。
Python數(shù)據(jù)分析--由python數(shù)據(jù)分析庫(kù)(pandas)主要作者編寫(xiě),對(duì)使用python分析數(shù)據(jù)有一個(gè)很好的介紹。
4、自己開(kāi)展項(xiàng)目
一旦你以指導(dǎo)的方式學(xué)習(xí)了這些概念,那么現(xiàn)在是自己開(kāi)展一些項(xiàng)目的時(shí)候了。你仍然需要查閱參考資料并查找概念,但是你將根據(jù)項(xiàng)目的需求來(lái)應(yīng)用你所學(xué)到的知識(shí),而不是相反。
找一起工作的其他人一起開(kāi)展項(xiàng)目,那樣可以幫助你學(xué)習(xí)并幫助你保持積極性。
我的一些建議:
- 擴(kuò)展你之前工作的項(xiàng)目,并添加更多功能
- 去你所在地區(qū)的python聚會(huì),找到正在開(kāi)展有趣項(xiàng)目的人。
- 查找開(kāi)源包并做出貢獻(xiàn)。
- 看看是否有任何本地非營(yíng)利組織正在尋找志愿者開(kāi)發(fā)者
- 查找其他人已經(jīng)完成的項(xiàng)目,看看你是否可以擴(kuò)展或改寫(xiě)它。
我的第一個(gè)項(xiàng)目是將我的自動(dòng)文本評(píng)分算法從R改寫(xiě)成python。它最終看起來(lái)沒(méi)有很漂亮,但它事我在學(xué)習(xí)Python旅程上的開(kāi)始。
其實(shí)關(guān)鍵是選擇一些東西來(lái)做。如果你只想做出一個(gè)完美無(wú)瑕疵的項(xiàng)目,那么你有可能永遠(yuǎn)都不會(huì)做出一個(gè)項(xiàng)目。
5、勇于挑戰(zhàn)更困難的項(xiàng)目
不斷增加你項(xiàng)目的難度和范圍。如果你對(duì)你正在開(kāi)發(fā)的東西感到很輕松,那就意味著現(xiàn)在是嘗試更加困難的東西的時(shí)候了。
以下是當(dāng)時(shí)的一些想法:
- 嘗試教一個(gè)新手如何做你當(dāng)前的項(xiàng)目。
- 嘗試加載測(cè)試你的網(wǎng)站-比如你可以擴(kuò)大它的規(guī)模嗎?
- 你可以讓你的程序運(yùn)行得更快嗎?
6、結(jié)語(yǔ)
不管怎么說(shuō),python一直在不斷演變進(jìn)化??赡苤挥猩贁?shù)人可以斷言完全理解它。
你需要不斷地學(xué)習(xí)和研究項(xiàng)目。如果你這樣做了,當(dāng)你回頭看看自己6個(gè)月前寫(xiě)的代碼,你會(huì)覺(jué)得這代碼是有多么糟糕。如果你到達(dá)這一層次了,那恭喜你,說(shuō)明你上道了。
推薦書(shū)單:
你眼中的Python大牛 應(yīng)該都有這份書(shū)單
不可錯(cuò)過(guò)的十本Python好書(shū)
Python是一種非常有趣且值得學(xué)習(xí)的語(yǔ)言,我認(rèn)為只要找到正確的動(dòng)機(jī),知道你為什么學(xué)習(xí)Python,你用它來(lái)做什么,漸漸的你就可以精通它。
- Python入門(mén)學(xué)習(xí)指南分享
- 致Python初學(xué)者 Anaconda入門(mén)使用指南完整版
- python學(xué)習(xí)入門(mén)細(xì)節(jié)知識(shí)點(diǎn)
- Python入門(mén)必須知道的11個(gè)知識(shí)點(diǎn)
- 分分鐘入門(mén)python語(yǔ)言
- 人生苦短我用python python如何快速入門(mén)?
- 為什么入門(mén)大數(shù)據(jù)選擇Python而不是Java?
- Python入門(mén)之后再看點(diǎn)什么好?
- python入門(mén)教程 python入門(mén)神圖一張
- 一份python入門(mén)應(yīng)該看的學(xué)習(xí)資料
相關(guān)文章
Python實(shí)現(xiàn)刪除list列表重復(fù)元素的方法總結(jié)
在Python編程中,我們經(jīng)常需要處理列表中的重復(fù)元素,這篇文章為大家介紹了五種高效的方法來(lái)刪除列表中的重復(fù)元素,希望對(duì)大家有所幫助2023-07-07
Python利用matplotlib.pyplot繪圖時(shí)如何設(shè)置坐標(biāo)軸刻度
Matplotlib是Python提供的一個(gè)二維繪圖庫(kù),所有類(lèi)型的平面圖,包括直方圖、散點(diǎn)圖、折線圖、點(diǎn)圖、熱圖以及其他各種類(lèi)型,都能由Python制作出來(lái)。本文主要介紹了關(guān)于Python利用matplotlib.pyplot繪圖時(shí)如何設(shè)置坐標(biāo)軸刻度的相關(guān)資料,需要的朋友可以參考下。2018-04-04
Python數(shù)據(jù)結(jié)構(gòu)隊(duì)列解決約瑟夫斯問(wèn)題
這篇文章主要介紹了Python數(shù)據(jù)結(jié)構(gòu)隊(duì)列解決約瑟夫斯問(wèn)題2023-02-02
Pandas中map(),applymap(),apply()函數(shù)的使用方法
本文主要介紹了Pandas中map(),applymap(),apply()函數(shù)的使用方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-02-02
Python Social Auth構(gòu)建靈活而強(qiáng)大的社交登錄系統(tǒng)實(shí)例探究
這篇文章主要為大家介紹了Python Social Auth構(gòu)建靈活而強(qiáng)大的社交登錄系統(tǒng)實(shí)例探究,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2024-01-01
簡(jiǎn)單介紹Python的Django框架的dj-scaffold項(xiàng)目
這篇文章主要介紹了簡(jiǎn)單介紹Python的Django框架的dj-scaffold項(xiàng)目,用于輔助Django框架的目錄設(shè)置,需要的朋友可以參考下2015-05-05
python 實(shí)現(xiàn)定時(shí)任務(wù)的四種方式
這篇文章主要介紹了python 實(shí)現(xiàn)定時(shí)任務(wù)的四種方式,幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下2021-04-04
python 執(zhí)行shell命令并將結(jié)果保存的實(shí)例
今天小編就為大家分享一篇python 執(zhí)行shell命令并將結(jié)果保存的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-05-05

