淺談Python程序的錯(cuò)誤:變量未定義
Python程序的錯(cuò)誤種類
Python程序的錯(cuò)誤分兩種。一種是語(yǔ)法錯(cuò)誤(syntax error)。這種錯(cuò)誤是語(yǔ)句的書寫不符合Python語(yǔ)言的語(yǔ)法規(guī)定。第二種是邏輯錯(cuò)誤(logic error)。這種錯(cuò)誤是指程序能運(yùn)行,但功能不符合期望,比如“算錯(cuò)了”的情形。
變量未定義的錯(cuò)誤
Python程序中,變量需要先定義后使用。如果沒(méi)有這樣做,就會(huì)出現(xiàn)變量未定義錯(cuò)誤。這屬于語(yǔ)法錯(cuò)誤。Pycharm中,語(yǔ)法錯(cuò)誤會(huì)用紅色的波浪線標(biāo)出來(lái),如圖1所示。

圖1 Pycharm中,語(yǔ)法錯(cuò)誤會(huì)用紅色的波浪線標(biāo)出來(lái)
Python程序運(yùn)行的錯(cuò)誤信息
Pycharm中,程序運(yùn)行出錯(cuò)了,會(huì)在運(yùn)行窗口(即輸入數(shù)據(jù)或輸出結(jié)果的窗口)中報(bào)告錯(cuò)誤信息。強(qiáng)行運(yùn)行圖1的例子,將呈現(xiàn)圖2所示的錯(cuò)誤信息。

圖2 下方的運(yùn)行窗口中報(bào)告了錯(cuò)誤信息
錯(cuò)誤信息中,顯示列出了程序的運(yùn)行軌跡(Traceback)。這里,運(yùn)行軌跡不長(zhǎng),以后會(huì)遇到很長(zhǎng)的情形。運(yùn)行軌跡只有一條,指出文件2-2-5-varError.py中的第3行(line 3),內(nèi)容是“print(mesage) #mesage的拼寫錯(cuò)了,漏了一個(gè)s”,存在錯(cuò)誤。文件路徑用藍(lán)色字體程序,說(shuō)明它是一個(gè)超鏈接,點(diǎn)擊它,上面編輯器就列出該行代碼及其附近的代碼。
錯(cuò)誤信息的最后,給出了錯(cuò)誤的結(jié)論,NameError: name ‘mesage' is not defined. 譯成中文就是,名字錯(cuò)誤:變量名‘mesage'未定義。
要學(xué)會(huì)分析Python程序的錯(cuò)誤信息。盡管它是英文的,你讀多了就會(huì)抓住要領(lǐng)。利用錯(cuò)誤信息,能更快的定位錯(cuò)誤和糾正錯(cuò)誤。
補(bǔ)充知識(shí):python 報(bào)錯(cuò)“xxx is not defined”
python使用input()來(lái)接受字符串時(shí)一直報(bào)錯(cuò)“xxx is not defined”
對(duì)于 input() ,它希望能夠讀取一個(gè)合法的 python 表達(dá)式,即你輸入字符串的時(shí)候必須使用引號(hào)將它括起來(lái)
以上這篇淺談Python程序的錯(cuò)誤:變量未定義就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
通過(guò)實(shí)例簡(jiǎn)單了解python yield使用方法
這篇文章主要介紹了通過(guò)實(shí)例簡(jiǎn)單了解python yield使用方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-08-08
Python 語(yǔ)法錯(cuò)誤:"SyntaxError: invalid charac
本文給大家分享Python 語(yǔ)法錯(cuò)誤:“SyntaxError: invalid character in identifier“,原因及解決方法,文末給大家補(bǔ)充介紹了Python出現(xiàn)SyntaxError: invalid syntax的原因總結(jié),感興趣的朋友跟隨小編一起學(xué)習(xí)吧2023-02-02
python3中@dataclass的實(shí)現(xiàn)示例
@dataclass?是 Python 3.7 引入的一個(gè)裝飾器,用于方便地定義符合數(shù)據(jù)類協(xié)議的類,本文主要介紹了python3中@dataclass的實(shí)現(xiàn)示例,感興趣的可以了解一下2024-02-02
opencv3/Python 稠密光流calcOpticalFlowFarneback詳解
今天小編就為大家分享一篇opencv3/Python 稠密光流calcOpticalFlowFarneback詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-12-12
現(xiàn)代Python編程的四個(gè)關(guān)鍵點(diǎn)你知道幾個(gè)
這篇文章主要為大家詳細(xì)介紹了Python編程的四個(gè)關(guān)鍵點(diǎn),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助2022-02-02
python實(shí)現(xiàn)最大子序和(分治+動(dòng)態(tài)規(guī)劃)
這篇文章主要介紹了python實(shí)現(xiàn)最大子序和(分治+動(dòng)態(tài)規(guī)劃),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07
pandas 查詢函數(shù)query的用法說(shuō)明
這篇文章主要介紹了pandas 查詢函數(shù)query的用法說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-03-03
Python爬蟲(chóng)常用小技巧之設(shè)置代理IP
這篇文章主要給大家介紹了關(guān)于Python爬蟲(chóng)常用小技巧之設(shè)置代理IP的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用python具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2018-09-09

