新手如何學習Python基礎?該如何正確學習呢?
都說Python簡單易學,那麼Python基礎該如何學習?有哪些必須學的知識?學習中有什麼技巧?今天這篇文章將會給你啟發。
Python上手很容易, 基本有其他語言程式設計經驗的人可以在1周內學會Python最基本的內容.(PS:沒有基礎的人也可以直接學習,速度會慢一點)
1.常用內建型別(int, float, bool, bytes, str, list, dict, set)的使用.
2.分支if-else 迴圈while 迭代for的語法.
3.def定義函式, 呼叫函式.
你再花1周學習些:
1.類
2.異常
此時, 有些人就在簡歷中得意的自稱"會"Python了.
但是學到如此程度, 在實際程式設計中會經常遇到挫折, 主要源自理解不夠深入, 僅僅Python語法和API層面體驗了一下.
隨意列舉一些新手普遍存在的問題:
1.不瞭解Python物件模型, 變數名, 物件概念含混.
2.不瞭解可變物件和不可變物件, 尤其是int.
3.不瞭解切片意味著複製, 在迴圈中大量使用, 影響效率.
4.不瞭解切片是淺複製還是深複製.
5.遇到bytes和str(2.7中的str和unicode)就頭暈.
6.經常在需要使用is的場景使用==.
7.不瞭解def是執行時執行語句, 並且是賦值語句.
8.類屬性和例項屬性混淆.
9.不瞭解在函式中修改可變物件引數會對呼叫者產生影響, 導致莫名其妙錯誤.
10.企圖在函式中修改全域性變數, 沒有使用global, 而建立了本地變數.
11.以可變物件做函式預設引數.
擁有某項技能的程式設計師的價值, 可以用學習技能所需的成本來衡量.你用2周學習達到的這種程度, 對於企業就是沒有價值的, 因為老闆可以讓一個公司裡任意其他語言的程式設計師經過2-3周的學習就能達到你現在的程度.
Python的簡潔易用, 快速開發對專案有價值, 但這不是你的價值, 是Python的價值.所以提高自身價值, 也就是不讓別人輕易追上你. 以極低的成本替代你.
你只能快跑, 進一步學習, Python語言層面還需要學習下面一些內容:
1.使用生成器, 迭代器
2.函數語言程式設計, 匿名函式lambda, map, reduce, filter
3.列表解析, 字典解析, 集合解析, 生成器解析
4.運算子過載(setattr, getattr, getitem, gt, lt...)
5.property, 描述符(get, set, delete)
6.上下文管理器(enter, exit)
7.深入理解物件導向
上述都是語言層面的,屬於內功.實戰中當然也需要一些更為具體的外功, 訓練外功可以從熟悉Python標準庫開始, 這些模組能進入標準庫說明他們足夠好並且在實際專案中足夠常用, 列舉一些極為常用的:
1.正規表示式 re
2.迭代工具 itertools
3.常用資料結構 collections, heapq, array
4.處理二進位制資料 struct
5.隨機 random
6.系統呼叫 os
7.Python物件序列化 pickle
8.多程式多執行緒處理 threading, multiprocessing
9.網路 socket, urllib
10.系統引數 sys
無論練習內功或外功,結合實戰都是最好的訓練方式和檢驗手段, 可以根據個人情況以及喜好選擇, 如:
1.使用django, flask開發網站.
2.開發網路爬蟲或使用Python爬蟲框架(如scrapy).
3.寫一些自動化運維指令碼, 定時讀取某軟體log, 出現異常自動發郵件.
4.使用selenium對網站進行測試.
5.使用Python開發樹莓派小車(電機,感測器驅動).
6.使用Python開發Vim外掛, 如在vim中做一個音樂播放器.
7.使用Python做演算法題, 如leetcode.
8.opencv做影像識別.
9.使用numpy和pandas做資料處理.
10.使用機器學習庫sklearn, tensorflow做應用.
11.使用PyQt編寫桌面應用.
12.使用scipy, matplotlib做科學計算.
13.使用Python做滲透測試.
......
個人建議選擇小專案進行實訓, 有些新手上來就想定一個大目標, 做的時候很挫折, 往往半途而廢.把小東西先實現, 然後最佳化. 接下來新增新功能, 慢慢迭代把小東西做大. 這樣在做的時候,每實現一個小功能你都會有成就感, 激勵繼續前進.
可能經過比較漫長的一段時間, 你成為了一個熟練的Python應用程式設計師, 還有些高階話題可以繼續學習:
1.裝飾器
2.元類
這些高階話題在開發框架中經常使用, 它們可以幫你建立更靈活的程式碼。
不要太過急功近利, 慢慢玩, 精進.
如果你覺著程式設計有趣, 成長也就不再痛苦, 祝學習愉快.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69947593/viewspace-2659187/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 0基礎新手該如何學習Python?學習技巧!Python
- 0基礎新手該如何學習Python?分享學習技巧!Python
- Python基礎教程該如何學習?Python
- 0基礎學習Python該如何入門?Python學習方法!Python
- 如何正確學習Node
- 如何正確學習JavaScript?JavaScript
- 如何正確學習Linux系統呢?Linux運維學習Linux運維
- 新手應該如何學習JAVAJava
- Linux該如何學習呢?Linux學習分享!Linux
- 學習python多久?該如何學習python?Python
- 如何正確學習 Node.jsNode.js
- 零基礎如何學習java更有效呢?Java
- 如何學習Python,新手如何入門Python
- laravel版本更新特快,新手該如何學習Laravel
- 新手應該如何學習網站分析學習網站
- 0基礎該不該學習Python?適合學習嗎?Python
- 0基礎能否學會Python?如何學習?Python
- 零基礎學習Hadoop,該如何下手?Hadoop
- Linux課程可以零基礎學習嗎?該如何學習?Linux
- 零基礎在學習Java時如何才能打好基礎呢?Java
- 零基礎如何迅速學習python?Python
- 如何正確學習web前端流程以及如何找工作Web前端
- 學習Python最正確的步驟(0基礎必備)Python
- 學習Python需要什麼基礎?如何學好Python?Python
- 零基礎該如何學習Web前端知識?Web前端
- Python零基礎好學嗎?零基礎如何學習Python?Python
- 程式設計零基礎應該如何開始學習Python?程式設計Python
- 程式設計零基礎應當如何學習Python?Python學習程式設計Python
- 0基礎小白如何學習Python技術?Python
- 學習python需要什麼基礎嗎?如何高效學Python?Python
- IT職場:如何正確有效的學習六西格瑪?
- 新手如何學習Java——Java學習路線圖Java
- 作為IT小白,應該如何系統學習Java呢?Java
- WCF技術我們應該如何以正確的方式去學習掌握
- 零基礎如何學習好Python開發?Python
- python基礎學習Python
- 沒有Python基礎,如何學習用Python寫機器學習Python機器學習
- 新手要正確看待外掛學習與資料分析