您的位置:首页 > 其它

011: Errors and Exceptions

2016-01-10 00:07 316 查看
1. Syntax errors, also known as parsing errors, are perhaps the most common kind of complaint you get while you are still learning Python

>>> print(a * 3)
Traceback (most recent call last):
File "<pyshell#0>", line 1, in <module>
print(a * 3)
NameError: name 'a' is not defined


2. Even if a statement or expression is syntactically correct, it may cause an error when an attempt is made to execute it. Errors detected during execution are called exceptions and are not unconditionally fatal. And example below would be very mindful:

class MyError(Exception):
def __init__(self, value):
self.value = value
def __str__(self):
return repr(self.value)

def learn_raise_error(num):
if num == 1:
result = num / 0
elif num == 2:
result = num * a
elif num == 3:
result = num + 'learn'
elif num == 4:
raise MyError(4)
elif num == 5:
raise Exception('Unkown excetion!')
else:
num = 6

for i in range(1,7,1):
try:
learn_raise_error(i)
except ZeroDivisionError:
print('ZeroDivisionError')
except NameError:
print('NameError')
except TypeError:
print('TypeError')
except MyError:
print('MyError')
except:
print('Unkown Error')
# when no exception, then execute else
else:
print('No Error')
# clean up
finally:
print('clean up...')


3. Some objects define standard clean-up actions to be undertaken when the object is no longer needed, regardless of whether or not the operation using the object succeeded or failed.

with open("myfile.txt") as f:
for line in f:
print(line, end="")
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: