python是一門動態語言。在給python傳引數的時候並沒有嚴格的型別限制。寫python程式的時候,發現錯誤經常只能在執行的時候發現。有一些錯誤由於隱藏的比較深,只有特定邏輯才會觸發,往往導致需要花很多時間才能將語法錯誤慢慢排查出來。其實有一些錯誤是很明顯的,假如能在寫程式的時候發現這些錯誤,就能提高工作效率。最近我發現,可以用pyflakes這個程式對python語法進行語法檢查,這樣可以盡量早的發現錯誤。pyflakes有三種使用方法,第一種是當作命令列工具使用。第二種可以作為vim的外掛程式,在vim編輯器中使用,實現所見即所得。第三種是可以在emacs中使用。
這是乙個命令列工具。在linux下,可以直接執行 『pyflakes 檔名』 對檔案進行語法檢查。
首先要確保vim支援python2.5以上版本,如果不確定是否支援,請在vim中執行命令。
1
:version
結果例如:
+代表支援的功能,-代表不支援的功能。由於上圖所示的vim不支援python, 所以需要重新編譯vim。
要編譯支援python2.5以上版本的vim, 第一要具有python2.5以上版本。第二要有vim原始碼,./configure --with-features=huge --enable-pythoninterp 然後再執行make ;make install編譯並且安裝。
確定vim支援python2.5以上版本的方法為,在vim中執行「:python import sys; print sys.version"
然後在.vimrc檔案中增加」filetype plugin indent on「。即可實現在vim編輯器中檢查python語法的功能。
emacs可以通過flymake支援pyflakes。首先要安裝命令列模式的pyflakes, 然後將下面的**加入$home/.emacs
01
(autoload 'flymake-find-file-hook
"flymake"
""
t)
02
(add-hook
'find-file-hook '
flymake-find-file-hook)
03
(setq flymake-gui-warnings-enabled nil)
04
(setq flymake-
log
-level 0)
05
(when (load
"flymake"
t)
06
(
07
defun flymake-pycheckers-init ()
08
(
09
let*
10
(
11
(
12
temp-file
13
(
14
flymake-init-create-temp-buffer-copy
15
'flymake-create-temp-inplace
16
)
17
)
18
(
19
local-file
20
(
21
file-relative-name
22
temp-file
23
(
24
file-name-directory buffer-file-name
25
)
26
)
27
)
28
)
29
(
30
list
"pyflakes"
(list local-file)
31
)
32
)
33
34
(add-to-list 'flymake-allowed-file-name-masks
35
'("\\.py\\'
" flymake-pycheckers-init))
36
)
37
)
然後在emacs介面中可以顯示python語法錯誤的地方。
如何使用pyflakes給python做語法檢查
如何使用pyflakes給python做語法檢查 costaxu的個人頁面 開源中國社群 如何使用pyflakes給python做語法檢查 python是一門動態語言。在給python傳引數的時候並沒有嚴格的型別限制。寫python程式的時候,發現錯誤經常只能在執行的時候發現。有一些錯誤由於隱藏的比...
py 變數使用
變數只能包含字母,數字,下劃線,且不能以數字開頭 massage ture massage true 1massage false不能包含空格,一般用下劃線來分割其中單詞,例 new massage不要將關鍵字用於變數名 慎用小寫字母1和大寫字母o 容易看成0和1 變數以引用方式賦值 a 100 b...
如何執行py檔案
配置 win10系統 python 3.7 下面是乙個簡單的py檔案 配置系統環境變數 開啟系統環境變數介面,找到path,點編輯,新建python的安裝路徑 不含python.exe 新建批處理命令檔案 用文字編輯器 這裡notepad 寫,儲存為.bat即可。編碼使用ansi,否則雙擊它也打不開...