工欲善其事必先利其器 用什麼寫Python?

2021-09-12 22:57:28 字數 2542 閱讀 6858

通常來說,每個程式設計師都有自己趁手的兵器:**編輯器。你要是讓他換個開發環境,恐怕開發效率至少下降三成。然而,每個人對編輯器的喜好各不相同,甚至引發出諸如「神的編輯器」與「編輯器之神」這種信仰之爭。但也正由此可見,個性化的編輯器對於乙個程式設計師的重要性。

對程式設計新手來說,開發環境的選擇常常成為入門後的第一道坎。因為搗鼓了半天沒能成功執行**而被迫從入門到放棄的情景並不少見。初上手時選擇的編輯器是否易用也會直接影響你的學習熱情。

今天就來講講我對 python 編輯器的經驗

我們用來寫 python 的工具有兩類:

一種是被稱為ide整合開發環境,它們為開發而生。如 idle、pycharm、spyder 等。

另一種更像是文字編輯器,只不過比較強大,可以支援編寫和執行**。如 sublimetext、emacs、vim 等。在此我主要介紹下我個人平常用的幾款。

1. idle

講真,再怎麼降低標準,idle 恐怕也算不上乙個「好」的編輯器。不論是自動補全、語法提示,還是專案檔案管理,甚至是高亮提示,它要麼不支援,要麼支援得很勉強。「使用者體驗」基本沒有,更要命的是,經常在某些系統或某些版本下無法執行或無法輸入。

但沒辦法,人是親兒子啊!安裝完 python 什麼配置都不用做(甚至不用理會環境變數),就可以用它來編寫和執行**了。對乙個沒什麼計算機基礎的新人來說,還要啥自行車要啥手錶呢?直接寫就完啦!

所以在我的零基礎教程,以及其他不少入門級教程裡,都把 idle 當做了一開始的演示開發環境。但我不得不強調下,idle 僅僅是程式設計世界的敲門磚,它讓你快速上手,但不可能陪你走下去。盡早去尋找屬於你的工具吧。

2. sublimetext

預設安裝後,如果你的電腦上已裝好 python,sublime 就可以執行 .py 檔案,並且具有語法提示、補全的功能。不支援更複雜的語法檢查,也不支援控制台輸入(input),但可以通過安裝額外外掛程式來補充功能。如果你電腦上有多個版本的 python,選擇起來也稍複雜。因此我常年開啟著 sublime,寫一些**片段,或者審核學員提交的作業時使用。

sublime 是收費軟體,但可以免費使用。

3. pycharm

這是我在課程中和答疑群裡主要推薦的開發工具。除了一開始配置可能會遇到點麻煩,以及啟動時間略慢以外,真的是很好用。pycharm 在專案內部提供了對編碼、第三方庫的管理,形成乙個小的沙盒,避免系統中其他的配置對開發環境造成的干擾,讓新手少踩點坑。不過有點不幸的是:如果你沒有按照它設想的那樣配置好,有可能因此踩到新的坑。

我個人用 pycharm 做的開發主要是課程和演示專案。如果你在使用其他編輯器時遇到問題,不妨同我的例子保持一致試試,減少不必要的折騰。

pycharm 也是收費軟體,但有免費的社群版和教育版(需申請)。我用的就是社群版,功能足夠學習了。如果你一定需要漢化版或者專業版,可自行網上搜尋。

4. ipython

ipython 是乙個互動式的開發環境,也就是我們課程一開始用過的 python shell 的加強版。通過 pip install ipython 即可安裝。主要是增加了自動補全和歷史命令記錄,語法高亮也看著舒服點。但新手可能不太會用到。如果你到了上伺服器執行**的階段,那一定得裝乙個。

同 sublime 一樣,ipython 我也一直開著。因為互動式的環境很適合除錯幾句**,測試一下某個語法的特性,看看某個模組裡方法的呼叫,甚至用 help() 命令去看文件。看過我答疑的同學也知道,我經常是針對問題在 ipython 裡執行一段**貼過去。我強烈建議大家養成執行**的習慣,尤其是在你看書看教程的時候,不要光顧著看,一定把編輯器開著隨時敲一敲**跑一跑。很多問題通過幾次嘗試自然就領會了。

5. jupyter

也就是 ipython notebook。它相當於是把上面提到的 ipython 做成了網頁版,但又不僅僅是網頁版。

我之前很少用,但最近有點愛上它:因為用它來寫爬蟲或資料分析實在太舒服了!寫爬蟲的時候免不了反覆嘗試,有了互動式的 jupyter,你可以步步為營,逐步修正你的**,而不用每次都從頭抓。資料分析則是因為它和 matplotlib 以及 echarts 都結合得很好,無需彈窗,頁面上直接顯示繪圖結果。

對於想深入資料分析的同學,拿一本《利用 python 進行資料分析》,再就著乙個開著的 jupyter 頁面,乙個個例子去玩吧。

5.emacs

為了用 emacs 我都改了自己的鍵位。最近手指有點疼,考慮是不是再加個腳踏板。

以上是我常用的編輯器。算是有點**,不過確實各有各的優勢。所以沒必要爭論哪個更好,按自己的需要選擇用著順手的就好。

對於初學,我還是建議用 pycharm,功能比較完善,各方面相對均衡。之前寫過兩篇關於 pycharm 的介紹文章,

不過似乎最近的版本又做了一些改動,可能我又得再寫一篇新的了。

如何自學python | 新手引導 | 精選

python

問答 | python單詞表 | 區塊鏈 | 人工智慧 | 雙11 | 嘻哈 | 爬蟲 | 排序演算法 | 我用python | 高考 | 世界盃 | requests

工欲善其事必先利其器

裸機開發流程 1.編寫裸機程式 2.除錯裸機程式 3.生成2進製映像 編譯 鏈結 格式轉換 4.燒寫 執行2進製映像。嵌入式開發模型 交叉開發常用交叉工具 1 交叉編譯器,arm linux gcc 2 交叉鏈結器,arm linux ld 3 交叉轉換器,arm linux readelf 4 交...

工欲善其事,必先利其器

如何做好乙個答辯ppt?最為重要的是,不要照搬網上那些所謂的模板,不要用模板,不要用模板。你覺得模板很酷炫還是很大氣?所謂的模板醜不醜不說,很有可能不適合你要表達的東西,填鴨式的ppt是很糟糕的。去改動別人的ppt模板,來適應自己所要表達的內容,所花費的時間完全夠你做乙個ppt了。另外,報告用ppt...

「工欲善其事 必先利其器」

部落格不夠,日常來湊!haha,真的兩個週都沒有更新過文章了 愧疚 前兩天看到一句話講,只要精神上滿足,身體的疲憊算不上什麼。我好像真的達不到這個境界。為期半個多月的感冒真的讓我變懶散了好多,不過還好,感覺終於可以告一段落了。昨天終於好好的著手去寫趙老師留給我的作業 超怕過期的說 學了一丟丟pyth...