每週分享五個 PyCharm 使用技巧(三)

文章首發於 微信公衆號:Python編程時光python

你們好,這是本系列 PyCharm 的高效使用技巧的第三篇。按照慣例,本次仍是分享 5 個。編程

本系列前兩篇以下,若還沒看的,你能夠點擊查閱+小程序

  1. juejin.im/post/5c98f6…
  2. juejin.im/post/5ca0be…

11. 一鍵進行代碼性能分析

在 Python 中有許多模塊能夠幫助你分析並找出你的項目中哪裏出現了性能問題。微信小程序

好比,經常使用的模塊有 cProfile,在某些框架中,也內置了中間件幫助你進行性能分析,好比 Django ,WSGI。bash

作爲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列組成一個表格,見下圖。post

  1. 表頭Name顯示被調用的模塊或者函數;Call Count顯示被調用的次數;Time(ms)顯示運行時間和時間百分比,時間單位爲毫秒(ms)。
  2. 點擊表頭上的小三角能夠升序或降序排列表格。
  3. 在Name這一個列中雙擊某一行能夠跳轉到對應的代碼。
  4. 以fun4這一行舉例:fun4被調用了一次,運行時間爲1000ms,佔整個運行時間的16.7%

點擊 Call Graph(調用關係圖)界面直觀展現了各函數直接的調用關係、運行時間和時間百分比,見下圖。

右上角的4個按鈕表示放大、縮小、真實大小、合適大小;

  1. 箭頭表示調用關係,由調用者指向被調用者;
  2. 矩形的左上角顯示模塊或者函數的名稱,右上角顯示被調用的次數;
  3. 矩形中間顯示運行時間和時間百分比;
  4. 矩形的顏色表示運行時間或者時間百分比大小的趨勢:紅色 > 黃綠色 > 綠色,由圖能夠看出fun3的矩形爲黃綠色,fun1爲綠色,全部fun3運行時間比fun1長。
  5. 從圖中能夠看出Test.py直接調用了fun三、fun一、fun2和fun5函數;fun5函數直接調用了fun4函數;fun一、fun二、fun三、fun4和fun5都直接調用了print以及sleep函數;整個測試代碼運行的總時間爲6006ms,其中fun3的運行時間爲1999ms,所佔的時間百分比爲33.3%,也就是 1999ms / 6006ms = 33.3%。

12. 使用Git作版本控制

按照以下提示點擊 Git 倉庫配置

接着輸入倉庫地址

點擊 Test,測試連通性,會要求輸入密碼

若一切順利,則會看到以下界面

測試鏈接成功後,點擊 Clone 就能夠克隆下來了。

對於之前使用 Git 命令來管理的,如今能夠直接使用 PyCharm 的菜單欄來操做,這些功能已經能夠知足大多數人的平常需求了,應該是夠用了。

13 Tab輕鬆轉空格

在團隊協做中,你不免會動到別人編輯的文件,有的人喜歡作tab作縮進,有的人喜歡用四個空格作縮進。

可是在同一個Python文件模塊裏,tab 和 四個空格縮進兩種風格是不能共存的。這就須要你按照該文件原來的縮進風格來進行編碼,在 Pycharm 裏,能夠設置自動檢測原文件的縮進風格來決定當你使用tab鍵縮進的時候,是TAB仍是四個空格。

在圖示位置打勾便可開啓自動檢測。

上面是對一箇舊的 Python 模塊進行修改時,如何決定當前編輯的縮進方式。

而對於新建模塊,默認的縮進方式,是如何肯定的?

以下圖,若在 Use tab character 打上勾,則你新建一個 Python 後,就會使用 TAB 進行縮進,反之,則使用四個空格進行縮進。

14. 一次註冊,永久激活

PyCharm 有分兩個版本,一個是社區版(免費功能有限),一個是專業版(有一些加強功能),詳細差別你能夠參考這個圖,通常來講,社區版用做學習用途是沒有問題的。

若是須要使用專業版,網上也有一些註冊服務器使用,很是方便,缺點是過一段時間,可能就會失效。這裏有一種一勞永逸的方法,但可能僅對早期的 PyCharm 版本有效,能夠實現永久激活(到 2099 / 2100年,必定意義上是永久了吧)。

通過我我的親測,如下破解jar包,Windows 中在 2017.1.5 版本中有效,Mac OS 在2018.2.4 版本中有效。若是你在本身的版本中嘗試無效,能夠嘗試切換至個人版本。

如下將分別以 Mac OS 和 Windows兩個主流系統作演示。

第一步

下載jar包: 此jar包的目的就是讓截獲截止時間並騙過 PyCharm;

Windows:pan.baidu.com/s/1dwhT6ptv… 密碼:lvyv

Mac OS:pan.baidu.com/s/1dwhT6ptv… ,密碼:5o4s

第二步

如果 Windows 系統,請找到並進入你的 PyCharm 安裝啓動目錄(以個人爲例):E:\Program Files\JetBrains\PyCharm 2017.1.5\bin

將第一步下載的 jar 包放入這個目錄,並打開以下兩個以 vmoptions 後綴結尾的文件:

添加以下這一行(請根據你的實際安裝目錄自行調整)

如果 Mac OS 系統,請找到並進入你的 Pycharm 安裝啓動目錄(以個人爲例)

將第一步下載的 jar 包放入這個目錄

並打開以下一個以 vmoptions 後綴結尾的文件:

第三步

隨意填寫個激活碼,若是此前已經有寫過,這步可直接跳過到第四步,若是沒有寫過,你就填這個吧。

點擊:Help -> Register -> Activation Code

BIG3CLIK6F-eyJsaWNlbnNlSWQiOiJCSUczQ0xJSzZGIiwibGljZW5zZWVOYW1lIjoibGFuIHl1IiwiYXNzaWduZWVOYW1lIjoiIiwiYXNzaWduZWVFbWFpbCI6IiIsImxpY2Vuc2VSZXN0cmljdGlvbiI6IkZvciBlZHVjYXRpb25hbCB1c2Ugb25seSIsImNoZWNrQ29uY3VycmVudFVzZSI6ZmFsc2UsInByb2R1Y3RzIjpbeyJjb2RlIjoiQUMiLCJwYWlkVXBUbyI6IjIwMTctMTEtMjMifSx7ImNvZGUiOiJETSIsInBhaWRVcFRvIjoiMjAxNy0xMS0yMyJ9LHsiY29kZSI6IklJIiwicGFpZFVwVG8iOiIyMDE3LTExLTIzIn0seyJjb2RlIjoiUlMwIiwicGFpZFVwVG8iOiIyMDE3LTExLTIzIn0seyJjb2RlIjoiV1MiLCJwYWlkVXBUbyI6IjIwMTctMTEtMjMifSx7ImNvZGUiOiJEUE4iLCJwYWlkVXBUbyI6IjIwMTctMTEtMjMifSx7ImNvZGUiOiJSQyIsInBhaWRVcFRvIjoiMjAxNy0xMS0yMyJ9LHsiY29kZSI6IlBTIiwicGFpZFVwVG8iOiIyMDE3LTExLTIzIn0seyJjb2RlIjoiREMiLCJwYWlkVXBUbyI6IjIwMTctMTEtMjMifSx7ImNvZGUiOiJEQiIsInBhaWRVcFRvIjoiMjAxNy0xMS0yMyJ9LHsiY29kZSI6IlJNIiwicGFpZFVwVG8iOiIyMDE3LTExLTIzIn0seyJjb2RlIjoiUEMiLCJwYWlkVXBUbyI6IjIwMTctMTEtMjMifSx7ImNvZGUiOiJDTCIsInBhaWRVcFRvIjoiMjAxNy0xMS0yMyJ9XSwiaGFzaCI6IjQ3NzU1MTcvMCIsImdyYWNlUGVyaW9kRGF5cyI6MCwiYXV0b1Byb2xvbmdhdGVkIjpmYWxzZSwiaXNBdXRvUHJvbG9uZ2F0ZWQiOmZhbHNlfQ==-iygsIMXTVeSyYkUxAqpHmymrgwN5InkOfeRhhPIPa88FO9FRuZosIBTY18tflChACznk3qferT7iMGKm7pumDTR4FbVVlK/3n1ER0eMKu2NcaXb7m10xT6kLW1Xb3LtuZEnuis5pYuEwT1zR7GskeNWdYZ0dAJpNDLFrqPyAPo5s1KLDHKpw+VfVd4uf7RMjOIzuJhAAYAG+amyivQt61I9aYiwpHQvUphvTwi0X0qL/oDJHAQbIv4Qwscyo4aYZJBKutYioZH9rgOP6Yw/sCltpoPWlJtDOcw/iEWYiCVG1pH9AWjCYXZ9AbbEBOWV71IQr5VWrsqFZ7cg7hLEJ3A==-MIIEPjCCAiagAwIBAgIBBTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTE1MTEwMjA4MjE0OFoXDTE4MTEwMTA4MjE0OFowETEPMA0GA1UEAwwGcHJvZDN5MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxcQkq+zdxlR2mmRYBPzGbUNdMN6OaXiXzxIWtMEkrJMO/5oUfQJbLLuMSMK0QHFmaI37WShyxZcfRCidwXjot4zmNBKnlyHodDij/78TmVqFl8nOeD5+07B8VEaIu7c3E1N+e1doC6wht4I4+IEmtsPAdoaj5WCQVQbrI8KeT8M9VcBIWX7fD0fhexfg3ZRt0xqwMcXGNp3DdJHiO0rCdU+Itv7EmtnSVq9jBG1usMSFvMowR25mju2JcPFp1+I4ZI+FqgR8gyG8oiNDyNEoAbsR3lOpI7grUYSvkB/xVy/VoklPCK2h0f0GJxFjnye8NT1PAywoyl7RmiAVRE/EKwIDAQABo4GZMIGWMAkGA1UdEwQCMAAwHQYDVR0OBBYEFGEpG9oZGcfLMGNBkY7SgHiMGgTcMEgGA1UdIwRBMD+AFKOetkhnQhI2Qb1t4Lm0oFKLl/GzoRykGjAYMRYwFAYDVQQDDA1KZXRQcm9
複製代碼

第四步

如果 Windows 系統,重啓 PyCharm 後,查看激活信息:Help -> About

若是是 Mac OS 系統,重啓 PyCharm 後,查看激活信息:PyCharm -> About PyCharm

另外,以上僅作交流和我的學習使用,請勿商用,有能力的朋友仍是但願多支持正版!

15. 源碼文檔,快速預覽

Ctrl + 鼠標左鍵 (Mac 上是:Command + 鼠標左鍵),能夠實現函數跳轉查看源碼, 這幾乎是每個 PyCharmer 都會的一個慣用技巧。

這裏再另外介紹兩個相似的小技巧,快速 查看函數文檔預覽源代碼

在函數的開頭處,使用三個引號 " 包含的內容,叫作函數文檔 (DocString)。

在編寫代碼時,順便寫好函數的接口文檔,是一個很好的編碼習慣。它介紹了該函數的參數類型及說明,返回值類型及範例,寫得好一點的還會寫出 幾個簡單的 Example Usage 有助於理解使用。在這一點上,Flask 能夠說作得至關好。這邊隨便截一個 Werkzeug 的例子。

假如咱們在使用這個類的時候,忘記了這個用法,能夠按住 Ctrl + q(Mac暫時未找到對應快捷鍵),在當前頁面就能夠快速預覽 LocalStack 的接口文檔。

一樣的,若是你對這個類或者函數的代碼邏輯感興趣,也可使用快速預覽的方式在當前頁面展現源代碼。快捷鍵是:Ctrl + shift + i (Mac:Command + shift + i)。效果以下

若是 PyCharm 檢測到的同名函數有多個,能夠點這裏進行選擇查看

這兩個快捷鍵比起使用 Ctrl + 鼠標左鍵 跳進源代碼來講,更加方便,,就像微信小程序同樣,用完即焚,不會新產生一個標籤頁,也不須要來回跳轉頁面。


關注公衆號,獲取最新干貨!
相關文章
相關標籤/搜索