給 Python 開發者的四條忠告!

給 Python 開發者的四條忠告!| CSDN 博文精選

作者 | 天元浪子

出品 | CSDN博客

给 Python 开发者的四条忠告!| CSDN 博文精选

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

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

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

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

  1. 專注於python本身,而不是被工具使用問題所困擾。君不見,知乎上關於pycharm和vscode的使用說明、常見問題的解決方案,多得幾乎超過了討論python本身

  2. 手工運行代碼,可以更直觀、更深刻地瞭解腳本的解釋執行過程

  3. 手工調試代碼,有助於代碼優化,提高代碼把控能力

  4. 可以更好地使用pip安裝和管理第三方模塊

给 Python 开发者的四条忠告!| CSDN 博文精选

習慣使用IDLE,這是學習python最好的方式

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

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

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

小技巧:

  1. tab鍵自動補齊

  2. 光標移動到執行過的語句上敲擊回車,可以重複這個命令

  3. 下劃線(_)可以獲取最後一次執行結果

给 Python 开发者的四条忠告!| CSDN 博文精选

關於Python,你不是懂得太少,而是知道得太多了

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

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

给 Python 开发者的四条忠告!| CSDN 博文精选
给 Python 开发者的四条忠告!| CSDN 博文精选

pip已經近乎完美,但你未必完全瞭解

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

<code># 安裝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
... .../<code>

pip也用來安裝本地whl文件:

<code>PS D:\\PyPackage\\py3> py -3 -m pip install .\\basemap-1.2.0-cp37-cp37m-win_amd64.whl/<code>

如果你需要下載python模塊,這裡是我見過的最全、最穩定的python模塊倉庫,由加州大學歐文分校熒光動力學實驗室創建並維護。

如果你的很多個項目中,都會用到你自己的某些模塊,那麼,把這些模塊做成安裝包,安裝到你的開發環境裡,可能是最佳選擇。拙作《學習筆記:發佈自己的python模塊安裝包》(https://blog.csdn.net/xufive/article/details/88

640229)對此有詳細說明。

想要請教博主?

给 Python 开发者的四条忠告!| CSDN 博文精选


分享到:


相關文章: