新聞中心
python是一種解釋型語言,在開發(fā)中,沒有了編譯這個環(huán)節(jié)。大部分腳本語言都是解釋型語言。

成都創(chuàng)新互聯(lián)是專業(yè)的和龍網(wǎng)站建設(shè)公司,和龍接單;提供成都做網(wǎng)站、成都網(wǎng)站設(shè)計、成都外貿(mào)網(wǎng)站建設(shè),網(wǎng)頁設(shè)計,網(wǎng)站設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進行和龍網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!
沒有了編譯這個環(huán)節(jié),在開發(fā)過程中,就無法知道自己所寫代碼的語法正確性,只有實際執(zhí)行代碼才知道語法是否正確。這樣是不便于高效查錯的。
所以,才有開源項目pyflakes的出現(xiàn),它專門用于python程序的早期查錯。
它使用起來非常簡單,首先用pip安裝(pip install --upgrade pyflakes),然后用這個命令(pyflakes xxx.py)就能檢查xxx.py文件中的錯誤。
下面是幾個例子:
例1:
python代碼(xxx.py文件中)
import os
for i in range(10)
print(i)
執(zhí)行pyflakes xxx.py輸出的結(jié)果
main1.py:3:19: invalid syntax
for i in range(10)
^
分析:
-
根據(jù)提示,在代碼的第三行,語法錯誤
-
經(jīng)檢查,是for中少寫了一個冒號
例2:
python代碼(xxx.py文件中)
import os
import time
import sys,os
for i in range(10):
print(i)
執(zhí)行pyflakes xxx.py輸出的結(jié)果
main2.py:2: 'time' imported but unused
main2.py:3: redefinition of unused 'os' from line 1
main2.py:3: 'os' imported but unused
main2.py:3: 'sys' imported but unused
分析:
-
代碼第2行中,導(dǎo)入的time模塊并未使用
-
代碼第3行中的os多次導(dǎo)入(跟第1行重復(fù))
例3:
python代碼
for i in range(10):
print(x)
執(zhí)行pyflakes xxx.py輸出的結(jié)果
main3.py:2: undefined name 'x'
分析
-
代碼第2行,x并未定義
-
這屬于比較嚴重的錯誤,有時候可以發(fā)現(xiàn)變量名被敲錯
總結(jié)
本例中的錯誤,在實際代碼運行時,若走不到這個邏輯,運行也不會報錯。這留下了很嚴重的BUG,難以察覺。但用pyflakes,就能很快發(fā)現(xiàn)這些問題。
文章題目:創(chuàng)新互聯(lián)Python教程:找不出python的語法錯誤該如何解決?
當(dāng)前URL:http://fisionsoft.com.cn/article/coshsjj.html


咨詢
建站咨詢
