![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLicmbw5SOjVGMkhTY1cjNiRmYzYTYjJWM0IjY1EzYhNTMkJ2Ym9CX5d2bs92Yl1iclB3bsVmdlR2LcNWaw9CXt92Yu4GZjlGbh5yYjV3Lc9CX6MHc0RHaiojIsJye.png)
大家好,這個系列到今天已經是第五篇了,按照慣例,本次還是分享 5 個。
21. 随處折疊,實作代碼自由
PyCharm 裡代碼塊的折疊功能,相當的顯眼,在代碼編輯框的左側,你可以發現有 + 也有 -,很容易了解 + 代表代碼塊被折疊了可以點此展開,而 - 代表這個代碼塊處于展開狀态可以點此折疊。
如果你和我一樣是個鍵盤黨,你可以使用快捷(Mac:按住Command鍵,再按+或者- )進行快速反折疊/折疊。
代碼塊的折疊和反折疊,應該是一個代碼編輯器的基本功能。在這一點上, PyCharm 做為一個 IDE,在這一點上勢必要做得更出色,事實證明,它做到了。
從上面,我們知道隻有代碼塊才支援縮放,那什麼樣的代碼PyCharm才會認為是一個代碼塊呢?其嚴格地定義我沒有找到,從經驗來看,一個類,一個函數,一個for循環,一個while循環,一個多行注釋等都是代碼塊。都可以進行折疊、反折疊。
有時候,我們并不希望整塊代碼進行折疊,而隻想對其他一大段暫時對我們無用的代碼進行折疊。那能做到嗎?
答案是可以的。
隻要你先選中你想折疊的代碼,再按住 Command (Windows:Ctrl鍵)緊接着按住 . 就可以了。效果如下:
(GIF動态隻播放兩次,重播請重新整理頁面)
22. 重構操作,一步到位
最近有一位同僚走了,由我來接手他的全部工作。
可能由于我有代碼潔癖,我花了一個星期對其代碼進行了大量的重構。
重構代碼,免不了要對變量進行重命名。
如果一個一個改,顯然不太智能,要知道我們是在用IDE,你也許會說,用搜尋全部替換不就行了?還真不行。
比如下面這段代碼,我隻想改myfun 裡的的test_name,而對于全局下的同名變量是不應該修改的。如果你全局替換,就會有誤傷。
這時候,我們如何做呢?
可以使用 PyCharm 的 Refactor 功能,它會自動比對作用域,既做到批量更改,也做到不誤傷。
操作方法很簡單,先選中你的變量,然後使用快捷鍵 Shift+F6,就可以直接重命名了。
23. 複雜操作,錄制成宏
如果你在使用PyCharm 的時候,遇到有一些操作是比較複雜(步驟多),且使用頻率特别高。
那可以考慮一下,使用其自帶的宏錄制工具。
它會将你的一連串操作,錄制下來。等你想用的時候,直接調用就行了。
這邊,我以錄制一個 删除函數 的宏為例:先按上面的方法折疊函數,再按 Command+y (Windows:Ctrl+y)删除該行,就删除了該函數。
做錄制方法如下:
錄制好後,你可以先定位到你要删除的函數處,點菜單欄 Edit - Macro 然後選擇我們剛剛錄制的宏,就可以播放宏了。
這樣播放宏顯得有點繁瑣,個人建議你為這個宏定義一個快捷鍵,這樣會更友善播放宏。
設定快捷鍵時,注意不要和已有的快捷鍵沖突。
設定好後,檢視 Macro,發現PyCharm已經将這個快捷鍵綁定給這個宏。
之後你就可以使用這個快捷鍵删除一個函數(其實這隻是删除一個代碼塊,因為這裡隻是為了示範設定方法而随便想了個例子)。
24. 多行标簽頁,一覽無餘
PyCharm 打開一個檔案,就占用一個标簽面。
你有沒有發現,不知不覺地,打開的檔案越來越多,多到一行标簽都裝不下,裝不下的标簽頁 PyCharm 會将其隐藏起來,并以數字的形式告訴你隐藏了幾個檔案。
點選數字5,你才可以檢視隐藏了哪些檔案。
這時你肯定會說,一行裝不下 PyCharm 為什麼不能多行顯示呢?
答案是,不是不能,而是需要你設定。
如下圖,将單行顯示取消勾選即可。
設定完後,有哪些檔案就非常清晰了。
25. 應用搜尋,閱讀源碼必備
你平時若有閱讀架構源碼的需求或習慣,那你一定要來掌握這個技能。
在閱讀源碼時,代碼的入口、流程、走向特别重要。
假設你現在知道了一個特别關鍵的類,你特别想知道是哪裡調用了這個類,你想知道源頭,知道整個調用流程。
這個時候你如果使用全局搜尋,就會有很多的幹擾資訊。你急需有一種方法,可以快速給你列出有哪些地方調用了這個類。
貼心的 PyCharm 早已為你準備好了一切。
快捷鍵:Mac:Command+Option+F7 ,Windows:Ctrl+Alt+F7
如下圖所示,按下快捷鍵後可以很輕松地看見調用清單。
好了,本次的 PyCharm 使用技巧,就是這五個了,你學會了嗎?
最後,感謝你的閱讀,如果覺得文章對你有所幫助,還望你能幫忙分享、轉發、點在看,這就是對我的最大支援。
-END-
作者:Python程式設計時光
來源:微信公衆号 小詹學Python