1、python异常处理机制
#python 的异常处理机制---------------tyr....except...
try:
num1 = int(input('num1='))
num2 = int(input('num2='))
num3 = num1 / num2
print(num3)
except ZeroDivisionError:
print('除数不能为0')
print('程序结束')
except ValueError:
print('要输入整数')
print('程序结束')
#python 的异常处理机制---------------try.... except.... else
try:
num1 = int(input('num1='))
num2 = int(input('num2='))
num3 = num1 / num2
except BaseException as e:
print('出错了')
print(e)
else:
print(num3)
#python 的异常处理机制---------------try...except... else...finally
try:
num1 = int(input('num1='))
num2 = int(input('num2='))
num3 = num1 / num2
except BaseException as e:
print('出错了')
print(e)
else:
print(num3)
finally:
print('程序结束')
#python异常处理机制 traceback模块打印异常信息
import traceback
try:
print('--------------------------')
print(1/0)
except:
traceback.print_exc()
2、异常类型
3、
#类
class Student:
native_place='山东'#写在类里的变量是类属性
def eat(self):
print('定义在类里称为实例方法')
@staticmethod
def method():
print('使用staticmethod修饰,是静态方法')
@classmethod
def cm(cls):
print('使用classmethod修饰,是类方法')
def __init__(self,name,age):
self.name=name
self.age=age
#类
class Student:
native_place='山东'#写在类里的变量是类属性
def eat(self):
print('吃饭')
@staticmethod
def method():
print('使用staticmethod修饰,是静态方法')
@classmethod
def cm(cls):
print('使用classmethod修饰,是类方法')
def __init__(self,name,age):
self.name=name
self.age=age
#调用实例方法
stu1=Student('柠柠',3)
stu1.eat()#对象.方法
Student.eat(stu1)#类.方法(类的对象)
#类属性的使用
print(Student.native_place)
#类方法的使用,类名直接访问
Student.cm()
#静态方法的使用,类名直接访问
Student.method()