xjar加密後執行錯誤 Python中的錯誤和異常

2021-10-12 18:53:55 字數 2281 閱讀 3074

前言

錯誤是程式中的問題,由於這些問題而導致程式停止執行。另一方面,當某些內部事件發生時,會引發異常,從而改變程式的正常流程。

python中會發生兩種型別的錯誤。

語法錯誤

邏輯錯誤(異常)

如果未遵循正確的語言語法,則會引發語法錯誤。

# 初始化amount變數

amount = 10000

# 檢查你是否有資格

# 是否購買某某自學課程

if(amount>2999)

print("您有資格購買某課程")

輸出:

ps c:usersadministratordesktop> & d:/python37-32/python.exe "g:/黑蘋果備份請勿刪除/**/exercise24 (1)/python加密.py"

file "g:/黑蘋果備份請勿刪除/**/exercise24 (1)/python加密.py", line 6

if(amount>2999)

^syntaxerror: invalid syntax

它返回語法錯誤訊息,因為在if語句後:缺少冒號。我們可以通過編寫正確的語法來解決此問題。

在執行時中,通過語法測試後發生錯誤的情況稱為異常或邏輯型別。例如,當我們將任何數字除以零時,zerodivisionerror就會引發異常,或者當我們匯入乙個不存在的模組時,就會引發異常importerror。

範例1:

# 初始化amount變數

marks = 10000

# 用0除

a = marks / 0

print(a)

輸出:

ps c:usersadministratordesktop> & d:/python37-32/python.exe "g:/黑蘋果備份請勿刪除/**/exercise24 (1)/python加密.py"

traceback (most recent call last):

file "g:/黑蘋果備份請勿刪除/**/exercise24 (1)/python加密.py", line 5, in a = marks / 0

zerodivisionerror: division by zero

在上面的示例中,我們嘗試將數字除以0時出現zerodivisionerror。

示例2:縮排不正確時。

if(a<3): 

print("gfg")

輸出:

ps c:usersadministratordesktop> & d:/python37-32/python.exe "g:/黑蘋果備份請勿刪除/**/exercise24 (1)/python加密.py"

file "g:/黑蘋果備份請勿刪除/**/exercise24 (1)/python加密.py", line 1

if(a<3):

^syntaxerror: invalid character in identifier

除上述異常外,一些常見的內建異常是:

當出現錯誤和異常時,我們將借助handling方法進行處理。

# 將不安全操作置於試驗區

try:

print("**開始")

# 不安全操作執行

print(1 / 0)

except :

print("發生錯誤")

finally:

print("軟體測試test")

輸出:

ps c:usersadministratordesktop> & d:/python37-32/python.exe "g:/黑蘋果備份請勿刪除/**/exercise24 (1)/python加密.py"

**開始

發生錯誤

軟體測試test

請在你的帳戶中加錢
輸出:

請在你的帳戶中加錢

python錯誤異常 python中的錯誤異常處理

這是我的 class persondata def init self,age,spouse none,children 0 self.age age self.children children self.spouse spouse if self.spouse none del self.spo...

Python 程式執行的錯誤和異常

demo for i in range 10 print i out for i in range 10 syntaxerror invalid syntaxpython的語法分析器完成,檢測到錯誤所在檔案的行號。以向上箭頭標記錯誤位置,最後顯示錯誤型別。當程式檢測到乙個錯誤,直譯器就無法繼續執行下...

python中遇到的錯誤

一 typeerror ufunc multiply did not contain a loop with signature matching types dtype dtype dtype u32就是 長度為32個位元組的無符號整數型別,這下就好辦了,發現問題是出在讀取txt資料時沒有轉換型別...