1. Key Promoter X
如果讓我給新手推薦一個 PyCharm 必裝插件,那一定是 Key Promoter X ,
它就相當于一個快捷鍵管理大師,它時刻地在:
-
督促你,當下你的這個操作,應該使用哪個快捷操作來提高效率?
-
提醒你,當下你的這個操作,還沒有設定快捷鍵,趕緊設定一個?
有了 Key Promoter X,你很快就能熟練地掌握快捷鍵,替代滑鼠指日可待,
比如我使用滑鼠點開 Find in Path,它就會在右下角彈窗提示你該用哪個快捷鍵,

2. Vim in PyCharm
在大多數場景之下,使用滑鼠的效率和精準度,是遠不如鍵盤快捷鍵的(前提是你已經相當熟練的掌握了快捷鍵),這個你得承認吧,
Vi 可以滿足你對文本操作的所有需求,比可視化界面更加效率,更加 geek,如果你和我一樣,是忠實的 vim 粉,在安裝完 Pycharm 完后,肯定會第一時間將 ideaVim 這個插件也裝上,它可以讓我們在 Pycharm 中 使用 vim 來編輯代碼,
安裝方法如下,安裝完后需要重啟 Pycharm 生效,

3. Markdown
富文本排版檔案是一件非常痛苦的事情 ,對于程式員寫檔案,最佳的推薦是使用 Markdown ,我所有的博客日記都是使用 Markdown 寫出來的,
從 Github下載的代碼一般也都會帶有README.md檔案,該檔案是一個Markdown格式的檔案,
PyCharm是默認沒有安裝Markdown插件的,所以不能按照Markdown格式顯示文本,顯示的是原始文本,
因此,如果要在 PyCharm 中閱讀 Markdown 檔案,可以裝一下 Markdown support 這個插件,
安裝的方法有兩種:
1、第一種,最方便的,就是你打開一個 MD 的檔案,PyCharm 就會提示你安裝它,
2、從插件商店中搜索安裝,

效果如下
[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-NOEVbklj-1609131420961)(http://image.iswbm.com/20200827130420.png)]
4. Jupyter Notebook
使用 Jupyter 之前 ,先要安裝它
$ pip install jupyter
然后按照下圖指示新建一個 Notebook ,就可以開始運作了,

這個界面感覺和 Jupyter 的風格不太符

但是使用上是沒有什么區別的,記住三個快捷鍵就好(下面指的是 Mac 上的,Windows 上的有所不同)
- Ctrl+Enter:運行該 cell
- Option + shift + Enter:除錯該 cell
- Shift + Enter:插入一個新的 cell

只要你安裝了 Jupyter 后,你使用 Python Console 也會自動變成 Jupyter 的模式

5. Regex Tester
Regex Tester是PyCharm的第三方插件,可以測驗正則運算式,
按照下圖入口,安裝 Regex Tester 插件:

安裝完成后,無需重啟 PyCharm ,點擊 PyCharm 界面左下方的小矩形按鈕,就能找到 Regex Tester 選項,

點擊進入后,就出現了如下界面,我隨手寫了個匹配手機號碼的正則(不一定準確),匹配到的字串背景會被高亮,右上方還有一些選項如大小寫敏感,多行模式等,可根據需要進行選擇,Regex Tester 還提供了Split,Replace功能等,
使用效果如下:

6. Use Bash in Windows
(注:這個是自帶工具,不是插件)
在 Windows 上的 cmd 命令和 Linux 命令有不少的差異,比如要列出當前目錄下的所有檔案,Windows 上是用 dir ,而 Linux 上則是用 ls -l ,
對于像我這樣熟悉 Linux 的開發者來說,Windows 的 那些 CMD 命令帶來的糟糕體驗是無法忍受的,

在彈出的 Bash 視窗,你可以敲入你想使用的 Linux 命令,是不是舒服多了,

7. Auto PEP8
pep8 是Python 語言的一個代碼撰寫規范,如若你是新手,目前只想快速掌味訓礎,而不想過多去注重代碼的的撰寫風格(雖然這很重要),那你可以嘗試一下這個工具 - autopep8
首先在全域環境中(不要在虛擬環境中安裝),安裝一下這個工具,
$ sudo pip install autopep8
然后在 PyCharm 匯入這個工具,具體設定如下圖
Name: AutoPep8
Description: autopep8 your code
Program: autopep8
Arguments: --in-place --aggressive --aggressive $FilePath$
Working directory: $ProjectFileDir$
Output filters: $FILE_PATH$\:$LINE$\:$COLUMN$\:.*

我隨意寫了一段不符合 pep8 規范的代碼,

點擊右鍵,選擇 External Tools -> AutoPep8

看一下效果,還是挺明顯的,

你可能會說,Pycharm 本身就自帶這個功能了呀,快捷鍵 Command+Option+L ,就可以實作一鍵pep8了,你可以對比一下,Pycharm 自帶的代碼 pep8 化功能 并沒有像這個autopep8 來得徹底, 我相信你最終的選擇肯定是后者,
8. Test RESTful Web Service
PyCharm 的 Test RESTful Web Service工具提供了RESTful介面測驗界面,如下圖所示,提供了get、post,put等http方法,其中的Request子界面headers,Parameters,Body等功能,Response子界面用于顯示回傳值,Response Headers用于顯示回傳的訊息頭,
為了演示,我先使用 Flask 寫一個 HTTP 介面
from flask import Flask, request
app = Flask(__name__)
@app.route('/hello')
def index():
name = request.args.get('name')
return '你好,' + name
if __name__ == '__main__':
app.run()
并運行它開啟服務,訪問地址是:http://127.0.0.1:5000/

通過下圖方式打開 Test RESTful Web Service

會出現如下界面,在紅框處填寫如下資訊

然后點擊最左邊的運行按鈕,即可向服務器發送 http 請求,

9. Execute Selection in Console
(注:這個是自帶工具,不是插件)
當你想寫一段簡單的測驗代碼時,或許你會這樣子
- 使用 Python Shell 直接寫,缺點是沒有自動補全,
- 在 PyCharm 中新開一個檔案,缺點是要新創建一個檔案,完了后還要洗掉,
今天再給大家介紹一種新的方法,可以完全避開上面兩種方式的缺點,
那就是 Execute Selection in Console,可以說是 Run in Anywhere.
只要在當前檔案中,寫好代碼,然后游標選擇后,右鍵點擊 Execute Selection in Python Console 或者 使用快捷鍵 option + shift + E (windows 上是 alt + shift + E),

接著 PyCharm 就會彈出一個 Python Console 視窗,然后運行你所選擇的代碼,

可以發現其中的一個亮點,就是使用這種方法,PyCharm 會自動幫我們處理好縮進(我們選擇時,前面有縮進,可是在執行時,會自動去掉前面多余的縮進)
10. CodeGlance
如果你曾使用過 Sublime Text,切換到其他代碼編輯器,或多或少會有些不習慣,因為很少有編輯器會像 Sublime 那樣自帶一個預覽功能的滾動條,
在 PyCharm 中,就沒有解決不了的問題,如果有,那么就裝個插件,
要想在 PyCharm 中使用這個預覽滾動條,只要裝上 CodeGlance 這個插件,使用效果如下

11. Chinese Plugin
經常聽到很多初學者抱怨說,PyCharm 怎么是全英文的?學起來好難啊,
在以前,我會跟他們說,學習編程語言,英文是一項非常重要的能力,千萬不能懼怕它,逃避它,而要是去學習它,適應它,如果連個 IDE 都適應不了,那就別學編程了,
而現在,JetBrains 官方自己出了漢化插件,名字就叫: chinese,在插件市場里一搜,排名第一便是它,下載量已經 40 萬,對比排名第二的民間漢化插件,簡直不是量級的,

點擊 INSTALL 安裝后,會提示你進行重啟,才能生效,

重啟完成后,展現在我們面前的是一個既熟悉又陌生的界面,所有的選單欄全部變成了中文,

點進設定一看,可以說基本實作了漢化,只剩下一小撮的英文(難道是因為這些詞保留英文會比翻譯后更容易理解嗎?就像 socket 和套接字一樣,),不過個人感覺完全不影響使用了,

12. Profile
(注:這個是自帶工具,不是插件)
在 Python 中有許多模塊可以幫助你分析并找出你的專案中哪里出現了性能問題,
比如,常用的模塊有 cProfile,在某些框架中,也內置了中間件幫助你進行性能分析,比如 Django ,WSGI,
做為Python 的第一 IDE, PyCharm 本身就支持了這項功能,而且使用非常方便,小白,
假設現在要分析如下這段代碼的性能損耗情況,找出到底哪個函式耗時最多
import time
def fun1():
time.sleep(1)
def fun2():
time.sleep(1)
def fun3():
time.sleep(2)
def fun4():
time.sleep(1)
def fun5():
time.sleep(1)
fun4()
fun1()
fun2()
fun3()
fun5()
點擊 Run -> Profile ‘程式’ ,即可進行性能分析,

運行完畢后,會自動跳出一個性能統計界面,

性能統計界面由Name、Call Count、Time(ms)、Own Time(ms) ,4列組成一個表格,見下圖,
- 表頭Name顯示被呼叫的模塊或者函式;Call Count顯示被呼叫的次數;Time(ms)顯示運行時間和時間百分比,時間單位為毫秒(ms),
- 點擊表頭上的小三角可以升序或降序排串列格,
- 在Name這一個列中雙擊某一行可以跳轉到對應的代碼,
- 以fun4這一行舉例:fun4被呼叫了一次,運行時間為1000ms,占整個運行時間的16.7%
點擊 Call Graph(呼叫關系圖)界面直觀展示了各函式直接的呼叫關系、運行時間和時間百分比,見下圖,

右上角的4個按鈕表示放大、縮小、真實大小、合適大小;
- 箭頭表示呼叫關系,由呼叫者指向被呼叫者;
- 矩形的左上角顯示模塊或者函式的名稱,右上角顯示被呼叫的次數;
- 矩形中間顯示運行時間和時間百分比;
- 矩形的顏色表示運行時間或者時間百分比大小的趨勢:紅色 > 黃綠色 > 綠色,由圖可以看出fun3的矩形為黃綠色,fun1為綠色,所有fun3運行時間比fun1長,
- 從圖中可以看出Test.py直接呼叫了fun3、fun1、fun2和fun5函式;fun5函式直接呼叫了fun4函式;fun1、fun2、fun3、fun4和fun5都直接呼叫了print以及sleep函式;整個測驗代碼運行的總時間為6006ms,其中fun3的運行時間為1999ms,所占的時間百分比為33.3%,也就是 1999ms / 6006ms = 33.3%,
13. Json Parser
在開發程序中,經常會把校驗一串 JSON 字串是否合法,在以前我的做法都是打開 https://tool.lu/json/ 這個在線網站,直接美化來校驗,只有 JSON 格式都正確無誤合法的,才能夠美化,

直到后來發現在 PyCharm 有一個插件專門來做這個事,那就是 JSON Parser,在插件市場安裝后,重啟 PyCharm ,就能在右側邊欄中看到它,

14. Inspect Code in PyCharm
對于編譯型的語言,如 Java,需要將代碼編譯成機器可識別的語言才可運行,在編譯程序中,就可以通過分析或檢查源程式的語法、結構、程序、介面等來檢查程式的正確性,找出代碼隱藏的錯誤和缺陷,這個程序叫做靜態代碼分析檢查,
那對于 Python 這種解釋型的語言來說,代碼是邊運行邊翻譯的,不需要經過編譯這個程序,很多肉眼無法一下子看出的錯誤,通常都是跑一下(反正跑一下這么方便)才能發現,
由于Python 運行是如此的方便,以至于我們都不太需要關注靜態分析工具,
但也不是說,靜態分析工具完全沒有用武之地,我認為還是有,
如果你的編碼能力還沒有很成熟,代碼中可以有許許多多的隱藏bug,由于 Python 是運行到的時候才解釋,導致一次運行只能發現一個錯誤,要發現100個bug,要運行100次,數字有點夸大,其實就是想說,如果這么多的錯誤都能通過一次靜態檢查發現就立馬修改,開發除錯的效率就可以有所提升,當然啦,并不是說所有的錯誤靜態分析都能提前發現,這點希望你不要誤解,
做為 Python 最強 IDE,PyCharm本身內置了這個功能,不需要你安裝任何插件,
你只需要像下面這樣點擊專案檔案夾,然后右鍵,選擇 Inspect Code,就可以開啟靜態檢查,

我對開源組件 nova 的靜態檢查發現,其有不規范的地方有數千處,

另外,我還整理了 100 個 PyCharm 的使用技巧,為了讓新手能夠直接上手,我花了很多的時間錄制了上百張 GIF 動圖,
有興趣的前往在線檔案閱讀:PyCharm 中文指南 1.0 檔案
?

以下是詳細目錄:
- 第一章:下載與安裝
- 1.1 【版本介紹】多個版本的介紹與選擇
- 1.2 【安裝使用 01】下載使用社區版
- 1.3 【安裝使用 02】使用專業版的五種方法
- 1.4 【免費使用 01】學生和老師可申請免費專業版
- 1.5 【免費使用 02】利用開源專案申請免費專業版
- 第二章:除錯與運行
- 2.1 【運行技巧 01】運行 Python 的四種方式
- 2.2 【運行技巧 02】通過指定引數,執行程式
- 2.3 【除錯技巧 01】超詳細圖文教你除錯代碼
- 2.4 【除錯技巧 02】程式結束了,照樣可以除錯
- 2.5 【除錯技巧 03】7 步實作遠程代碼除錯
- 第三章:界面與排版
- 3.1 【界面改造 01】打造顏值超高的界面
- 3.2 【界面改造 02】關閉礙眼的波浪線
- 3.3 【界面改造 03】開啟護眼模式
- 3.4 【界面改造 04】開啟多行標簽頁
- 3.5 【界面改造 05】關閉煩人的燈泡提示
- 3.6 【界面改造 06】小螢屏必看:開啟大螢屏編碼模式
- 3.7 【界面改造 07】大螢屏必看:分屏查看代碼
- 第四章:代碼的編輯
- 4.1 【高效編輯 01】重寫父類方法的正確姿勢
- 4.2 【高效編輯 02】縮進和反縮進
- 4.3 【高效編輯 03】實作介面方法的正確姿勢
- 4.4 【高效編輯 04】快速開啟新的一行
- 4.5 【高效編輯 05】變數名一鍵實作大小寫的轉換
- 4.6 【高效編輯 06】代碼塊實作隨處折疊
- 4.7 【高效編輯 07】洗掉與剪切的技巧
- 4.8 【高效編輯 08】歷史剪切板的使用:Paste from History
- 4.9 【高效編輯 09】使用函式時,快速查看該函式有哪些引數
- 4.10 【高效編輯 10】自動糾正與自動補全
- 4.11 【高效編輯 11】輸出結果美化:Show as JSON
- 4.12 【高效編輯 12】顯示背景關系資訊
- 4.13 【高效編輯 13】一鍵預覽模塊的檔案
- 第五章:快捷與效率
- 5.1 【提高效率 01】復雜操作,錄制成宏
- 5.2 【提高效率 02】使用收藏夾,收藏關鍵代碼位
- 5.3 【提高效率 03】一套快捷鍵,精準打開工具列
- 5.4 【提高效率 04】使用模板,快速捕獲例外
- 5.5 【提高效率 05】快速輸入自定義代碼片段
- 5.6 【提高效率 06】代碼模板,效率編碼
- 5.7 【提高效率 07】代碼封裝,一步到位
- 5.8 【提高效率 08】爬蟲必備,一鍵加引號
- 第六章:搜索與導航
- 6.1 【搜索技巧 01】精準搜索函式在哪些地方被呼叫
- 6.2 【搜索技巧 02】在專案中使用書簽,快速定位
- 6.3 【搜索技巧 03】無死角搜索:搜索的八種姿勢
- 6.4 【搜索技巧 04】搜索時過濾測驗檔案
- 6.5 【搜索技巧 05】當前檔案替換與全域替換
- 6.6 【搜索技巧 06】顯示當前類的繼承樹:Type Hierarchy
- 6.7 【搜索技巧 07】顯示當前方法的呼叫樹:Method Hierarchy
- 6.8 【導航技巧 01】跳轉到最后編輯的地方
- 6.9 【導航技巧 02】在子類方法中快速進入父類方法
- 6.10 【導航技巧 03】前進/后退 到上次"點擊"的地方
- 6.11 【導航技巧 04】顯示最近打開過的檔案
- 6.12 【導航技巧 05】不使用滑鼠,操作目錄打開檔案
- 6.13 【導航技巧 06】快速跳轉到有 ERROR 的行
- 6.14 【導航技巧 07】跳轉到上/下一個方法
- 6.15 【導航技巧 08】向左/向右切換標簽頁
- 6.16 【導航技巧 09】快速打開檔案可用的工具列
- 6.17 【導航技巧 10】學會跨級別跳轉代碼塊
- 6.18 【導航技巧 11】善用 TODO 記錄待辦事項
- 6.19 【搜索技巧08】查找最近的搜索記錄
- 第七章:版本與管理
- 7.1 【版本管理 01】使用 Git 進行版本管理
- 7.2 【版本管理 02】三種查看檔案的修改
- 7.3 【版本管理 03】媲美beyond compare 的差異對比功能
- 7.4 【版本管理 04】查看檔案修改記錄:Annotate
- 7.5 【版本管理 05】查看檔案的所有操作記錄
- 第八章:插件與工具
- 8.1 【插件神器 01】在 PyCharm 中使用 vim
- 8.2 【插件神器 02】JetBrains 官方推出了漢化插件
- 8.3 【插件神器 03】在 PyCharm 中寫 Markdown
- 8.4 【插件神器 04】正則運算式測驗:Regex Tester
- 8.5 【絕佳工具 01】在Windows上使用 Bash 命令
- 8.6 【絕佳工具 02】代碼不規范?試試自動化 PEP8
- 8.7 【絕佳工具 03】HTTP介面除錯:Test RESTful Web Service
- 8.8 【絕佳工具 04】選擇執行:Execute Selection in Console
- 8.9 【絕佳工具 05】一鍵進行代碼性能分析
- 8.10 【絕佳工具 06】開啟靜態代碼分析檢查
- 8.11 【絕佳工具 07】在 PyCharm 運行 Jupyter Notebook
- 8.12 【插件神器 05】快捷鍵管理大師:Key Promoter X
- 8.13 【插件神器 06】代碼滾動預覽:CodeGlance
- 8.14 【插件神器 07】JSON美化插件:Json Parser
- 第九章:常用的技巧
- 9.1 【必學技巧 01】輕松實作 JSON格式化
- 9.2 【必學技巧 02】誤刪專案?一秒找回
- 9.3 【必學技巧 03】智能補全,忽略大小寫
- 9.4 【必學技巧 04】以列為單位的塊編輯
- 9.5 【必學技巧 05】閱讀原始碼的六種方法
- 9.6 【必學技巧 06】快速重構,修改所有函式與變數
- 9.7 【必學技巧 07】tab和空格混用自動轉換
- 9.8 【必學技巧 08】脫離滑鼠的代碼區域選擇:Extend Selection
- 9.9 【必學技巧 09】從可視化 Python 包管理器
- 9.10 【必學技巧 10】快速移動/拷貝檔案:F6/F5
- 9.11 【必學技巧 11】顯示類繼承關系圖:Show Diagrams
- 9.12 【必學技巧 12】快速隱藏專案樹
- 9.13 【必學技巧 13】把檔案設定為只讀:Read-Only
- 9.14 【必學技巧 14】自動匯入解決依賴:Alt+Enter
- 9.15 【必學技巧 15】在檔案管理器/Finder 中打開檔案夾的三種方法
- 9.16 【必學技巧 16】在Terminal 中打開檔案夾
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/242329.html
標籤:AI
上一篇:Google DeepMind 團隊發布新演算法,下一個被 AI 虐哭的是誰?
下一篇:高并發高性能服務器是如何實作的
