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

2021-10-11 00:03:39 字數 1071 閱讀 5709

這是我的**:

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.spouse

print "a %s year old person" % str(self.age)

def marries(self, name):

if self.spouse == none:

self.spouse = name

else:

try:

self.marries(name)

except exception as detail:

print "spouse exists:", self.spouse

def divorces(self):

if self.spouse == none:

raise attributeerror, " not married, divorce impossible"

我想做的是:

def divorces(self):

if self.spouse != none: ## thats mean the person has a spouse,

self.spouse = none ## i think that should remove the spouse, right?

如果我們再次提出離婚,這應該是例外,因為配偶已被移走.

假設我的:

person = persondata(30, 'sue')

person.spouse將是sue,如果我呼叫person.marries(『anna』),則會引發異常,現在,如果我呼叫person.divorce(),它將刪除配偶(『sue』).我遇到的問題是,當我打**給person.divorce()時,它應該引發異常,說「不存在配偶」,而我無法做到這一點,我們將不勝感激.

python 異常錯誤

錯誤的型別有很多種,例如nameerror,ioerror等,可以用exception來囊括所有的錯誤型別。result用來記錄錯誤的具體資訊。注意 如果某一行報錯,下面的 是不會被執行的。try print num except exception as result print 產生錯誤了,錯誤...

python 錯誤與異常

錯誤在執行前修改,邏輯錯誤無法修改 執行時,異常產生,檢查到錯誤且直譯器認為是異常,丟擲異常 異常處理,截獲異常,忽略或者終止程式處理異常 try try suite except exception e exception blocktry aexcept nameerror,e print ca...

python錯誤和異常

1 語法錯誤 syntax errors 語法錯誤,也就是解析時錯誤。當我們寫出不符合python語法 時,在解析時會報syntaxerror,並且會顯示出錯的那一行,並用小箭頭知名指明最早探測到錯誤的位置。如 while ture file line 1 while ture syntaxerro...