Key Promoter X
。Key Promoter X,你很快就能熟練地掌握快捷鍵,替代滑鼠指日可待。
在大多數場景之下,使用滑鼠的效率和精確度,是遠不如鍵盤快捷鍵的(前提是你已經相當熟練的掌握了快捷鍵),這個你得承認吧。
Vi 可以滿足你對文字操作的所有需求,比視覺化介面更加效率,更加 geek。如果你跟我一樣,是忠實的 vim 粉。安裝完 Pycharm 完畢後,一定會第一時間將 ideaVim
這個外掛程式也裝上,它可以讓我們在 Pycharm 中 使用 vim 來編輯程式碼。
安裝方法如下,安裝完後需要重新啟動 Pycharm 生效。
#豐富文字排版文件是一件非常痛苦的事情,對於程式設計師寫文檔,最佳的推薦是使用Markdown ,我所有的部落格日記都是使用Markdown 寫出來的。
從 Github下載的程式碼一般也會帶有README.md文件,該文件是一個Markdown格式的文件。
PyCharm是預設沒有安裝Markdown插件的,所以不能按照Markdown格式顯示文本,顯示的是原始文本。
因此,如果要在 PyCharm 中閱讀 Markdown 文檔,可以安裝 Markdown support 這個外掛。
安裝的方法有兩種:
1、第一種,最方便的,就是你開啟一個 MD 的文檔,PyCharm 就會提示你安裝它。
2、從外掛程式商店搜尋安裝。
效果如下
##使用Jupyter 之前,先安裝它
$ pip install jupyter
然後按照下圖指示新建一個Notebook ,就可以開始運作了。
這個介面感覺和Jupyter 的風格不太符
但是使用上是沒有什麼區別的,記住三個快捷鍵就好(下面指的是Mac 上的,Windows 上的有所不同)
#Ctrl Enter:運行該cell
Option shift Enter:除錯該cell
#Shift Enter:插入一個新的cell
只要你安裝了Jupyter 後,你使用Python Console 也會自動變成Jupyter 的模式
#Regex Tester是PyCharm的第三方插件,可以測試正規表示式。
依照下圖入口,安裝Regex Tester 外掛:
安裝完成後,無需重新啟動PyCharm ,點選 PyCharm 介面左下方的小矩形按鈕,就能找到Regex Tester 選項。
点击进入后,就出现了如下界面。我随手写了个匹配手机号码的正则(不一定准确),匹配到的字符串背景会被高亮。右上方还有一些选项如大小写敏感,多行模式等,可根据需要进行选择。Regex Tester 还提供了Split,Replace功能等。
使用效果如下:
在 Windows 上的 cmd 命令和 Linux 命令有不少的差异,比如要列出当前目录下的所有文件,Windows 上是用 dir
,而 Linux 上则是用 ls -l
。
对于像我这样熟悉 Linux 的开发者来说,Windows 的 那些 CMD 命令带来的糟糕体验是无法忍受的。
在弹出的 Bash 窗口,你可以敲入你想使用的 Linux 命令,是不是舒服多了。
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
来得彻底。我相信你最终的选择肯定是后者。
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 請求。使用Python Shell 直接寫。缺點是沒有自動補全。
在 PyCharm 中新開一個檔案。缺點是要新建立一個文件,完了後還要刪除。
Execute Selection in Console,可以說是
Run in Anywhere.
Execute Selection in Python Console 或使用快速鍵option shift E (windows 上是alt shift E)。
如果你曾經使用過Sublime Text,切換到其他程式碼編輯器,或多或少會有些不習慣,因為很少有編輯器會像Sublime 一樣自備一個預覽功能的捲軸。
在 PyCharm 中,就沒有解決不了的問題,如果有,那就裝個插件。
要想在 PyCharm 中使用這個預覽捲軸,只要安裝上 CodeGlance
這個外掛程式。使用效果如下
#常聽到很多初學者抱怨說,PyCharm 怎麼是全英文的?學起來好難。
在以前,我會跟他們說,學習程式語言,英文是一項非常重要的能力,千萬不能懼怕它,逃避它,而要是去學習它,適應它,如果連個IDE都適應不了,那就別學程式了。
而現在,JetBrains 官方自己出了漢化插件,名字就叫:chinese,在插件市場裡一搜,排名第一便是它,下載量已經40 萬,對比排名第二的民間漢化插件,簡直不是量級的。
點選 INSTALL
安裝後,會提示你進行重啟,才能生效。
重啟完成後,展現在我們面前的是一個既熟悉又陌生的介面,所有的選單列全部變成了中文。
點進設定一看,可以說基本上實現了漢化,只剩下一小撮的英文(難道是因為這些字保留英文會比翻譯後更容易理解嗎?就像socket 和套接字一樣。),不過個人感覺完全不影響使用了。
在 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% 。
JSON Parser,在外掛程式市場安裝後,重啟PyCharm ,就能在右側邊欄看到它。
由於Python 運作是如此的方便,以至於我們都不太需要關注靜態分析工具。
但也不是說,靜態分析工具完全沒有用武之地,我認為還是有。
如果你的編碼能力還沒有很成熟,程式碼中可以有許許多多的隱藏bug,由於Python 是運行到的時候才解釋,導致一次運行只能發現一個錯誤,要發現100個bug,要運行100次,數字有點誇大,其實就是想說,如果這麼多的錯誤都能透過一次靜態檢查發現就立刻修改,開發調試的效率就可以有所提升。當然啦,並不是說所有的錯誤靜態分析都能提前發現,這點希望你不要誤解。
做為 Python 最強 IDE,PyCharm本身內建了這個功能,不需要你安裝任何外掛程式。
你只需要像下面這樣點選專案資料夾,然後右鍵,選擇 Inspect Code
,就可以開啟靜態檢查。
我對開源元件 nova 的靜態檢查發現,其不規範的地方有數千處。
以上是裝上後這 14 個插件後,PyCharm 真的是無敵的存在的詳細內容。更多資訊請關注PHP中文網其他相關文章!