1. syntax errors (arrow marks)
2. zero division error, name error, type error.
3. try except
while True:
try:
x = int(raw_input("Input:"))
break
except ValueError:
print "Something wrong and re-input"
not except will spread this error to up-level try.
except (RuntimeError,TypeError,NameError), allow more than one except and the last except doesn't need to write the errors
can add else at the end of except, code after this can execute when no exception.
4. force except
try:
raise NameError,'hahah' # error name and parameter
except NameError:
print 'afdafdf'
raise # another throw
5. user defined errors
6. clean
file or network
finally will execute no matter exception happed
if exception happened, after execute finally code and will throw again