給 python 初學者的四條忠告


1. 不要糾結於開發工具的選擇,簡單直接就是最好的

學習一種編程語言,首先要找一款合用的集成開發工具,似乎是自然而然的想法。為什么不呢?IDE可以自動補齊,可以一鍵運行,還可以斷點調試。使用IDE開發項目,就像駕駛一輛內飾豪華的汽車,盡情享受駕駛的樂趣就好了,誰還去關心引擎蓋里面發動機是如何工作的呢?我的年輕同事們也都是IDE的擁躉,最初使用pycharm,后來是時下大熱的vscode。

可是,我始終認為,編程就像是駕駛,程序員就是司機,而且是職業司機,不是把駕駛當成通勤技能的各色白領金領。既然是職業司機,就不能滿足於打着領結、戴着白手套駕駛內飾豪華、配置高端的汽車,而是必須具備打開引擎蓋子維修和保養的能力。

基於這個觀點,我不建議初學者一開始就使用集成開發工具。對於python這樣一種解釋型的腳本語言,一款趁手的編輯器就足夠了。linux平台上,vim或者emacs都足夠好(如果你通曉二者或者其中之一的話,請接受我的敬意);windows平台上,我推薦使用notepad++。python初學者使用編輯器而非IDE的好處是:

專注於python本身,而不是被工具使用問題所困擾。君不見,知乎上關於pycharm和vscode的使用說明、常見問題的解決方案,多得幾乎超過了討論python本身
手工運行代碼,可以更直觀、更深刻地了解腳本的解釋執行過程
手工調試代碼,有助於代碼優化,提高代碼把控能力
可以更好地使用pip安裝和管理第三方模塊
2. 習慣使用IDLE,這是學習python最好的方式

解釋型語言的優勢,就是可以寫一句執行一句,想到哪兒寫到哪兒,不必像編譯型語言那樣得把程序全部寫完,編譯成功后才能運行。我特別喜歡使用python的IDLE,甚至拿它當計算器用。很多時候,我用IDLE驗證代碼的寫法是否正確,查看模塊是否安裝成功以及版本號。IDLE支持tab鍵自動補齊,我經常用這個功能查看某個對象的方法和屬性。

>>> import numpy as np
>>> np.__version__
'1.17.0'
>>> np.hypot(3,4)
5.0
>>> def factorial(n): # 計算n的階乘
	if n == 0: # 遞歸出口
		return 1
	return n*factorial(n-1) # 向遞歸出口方向靠近的自身調用

>>> factorial(5)
120
>>> _*2-100
140

  

小技巧

  1. tab鍵自動補齊
  2. 光標移動到執行過的語句上敲擊回車,可以重復這個命令
  3. 下划線(_)可以獲取最后一次執行結果

3. 關於python,你不是懂得太少,而是知道得太多了

很多 python 初學者熱衷於觀看各種網絡教程、視頻教程,甚至還做了很多筆記。經過了長時間的學習之后,發現自己還是無法駕馭python。在我看來,出現這個問題的原因,不是因為他們懂得太少,而是知道得太多了——准確說,是在初級階段學習了高級階段的課程。

學習是一個循序漸進的過程,而編程又一門實踐性很強的藝術,因此學習編程需要不斷地重復“學習-實踐”。不要認為跟着教程敲幾行代碼就叫實踐,那還是學習的過程。真正的實踐,就是寫一個讓自己滿意的代碼,實現一個獨立的功能。比如,初學者可以實現從一個文本文件讀出內容,做些特別處理,再寫入另一個文件,或者寫一些算法函數等。有一定基礎之后,可以寫一個socketserver,或者寫個小游戲。下圖是我學習wxpython時給自己確定的實踐目標。類似的,初學者應該可以想到更多。

 

 

 

4. pip已經近乎完美,但你未必完全了解

在python語言的發展過程中,安裝和管理第三方模塊的方法也歷經變化。現在,我們終於等來了pip這個近乎完美的工具。pip除了安裝(install)和刪除(uninstall)這兩大功能,還可以指定模塊的安裝版本(無需預先刪除當前已安裝版本),可以顯示所有已安裝的模塊,還可以通過upgrade自主升級。

# 安裝numpy模塊
PS D:\XufiveGit\wxgl> pip install numpy

# 如果同時安裝了py2和py3環境的話,需要這樣使用pip
PS D:\XufiveGit\wxgl> py -3 -m pip install numpy

# 刪除numpy模塊
PS D:\XufiveGit\wxgl> py -3 -m pip uninstall numpy

# 安裝numpy模塊,指定版本1.15.0
PS D:\XufiveGit\wxgl> py -3 -m pip install numpy=1.15.0

# 自主升級
PS D:\XufiveGit\wxgl> py -3 -m pip install --upgrade pip

# 顯示已安裝的模塊
PS D:\XufiveGit\wxgl> py -3 -m pip list
Package           Version
----------------- -----------
-pencv-python     4.1.1
argh              0.26.2
attrs             19.1.0
Automat           0.7.0
basemap           1.2.0
beautifulsoup4    4.6.3
bleach            3.1.0
cefpython3        66.0
... ...


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM