一、异常捕获
目的:在程序遇到异常的时候可以继续执行
语法:
结构1 - 捕获所有类型的异常
"""
try:
代码段1(需要捕获异常的代码)
except:
代码段2(捕获到异常后会执行的代码)
finally:
代码段
执行过程:先执行代码段1,如果没有出现异常就不会执行代码段2,直接执行后面的其他代码;
如果出现异常,程序不会报错,直接执行代码段2,然后再执行后面的其他代码。
"""
结构2 - 捕获指定类型的异常
"""
try:
代码段1(需要捕获异常的代码)
except 异常类型:
代码段2(捕获到异常后会执行的代码)
finally:
代码段
"""
结构3 - 同时捕获多种异常,不同的异常做相同的处理
"""
try:
代码段1(需要捕获异常的代码)
except (异常类型1, 异常类型2, ...):
代码段2(捕获到异常后会执行的代码)
finally:
代码段
"""
结构4 - 同时捕获多种异常,不同的异常做不同的处理
"""
try:
代码段1(需要捕获异常的代码)
except 异常类型1:
代码段11
except 异常类型2:
代码段22
except 异常类型3:
代码段33
...
finally:
代码段
"""
finally
异常捕获的完整结构:try-except-finally
finally的存在不影响try-except的功能,finally后面的代码段不管前面发生什么都会执行
二、 类和对象
- 概念
类 - 类就是拥有相同属性和相同功能的对象的集合 (一个抽象的概念)
对象 - 对象就是类的实例 (具体的一个事物)
- 语法
"""
用代码说清楚,这个类共同的属性-属性(类属性和对象属性)和功能-方法(函数-方法)有哪些?
语法:
class 类名:
类说明文档
类的内容(属性和方法)
说明:
class - 关键字,固定写法
类名 - 程序员自己命名;
要求:标识符,不是关键字
规范:见名知义;采用驼峰式命名,首字母大写;
不使用系统的函数名、类名或者模块名
: - 固定写法
类说明文档 - 本质就是多行注释
类的内容 - 由属性和方法两个部分组成
属性:类属性、对象属性
方法:对象方法、类方法、静态方法
"""
- 创建对象
语法:类名()
-
对象方法
1)对象方法(对象.)
"""
怎样定义:直接定义在类的函数就是对象方法
怎么调用:通过'对象.'的方式去调用
特点:有个默认参数self,通过对象调用对象方法的时候默认参数self不用传参,
系统会自动将当前对象传给self(谁调用self就指向谁)
"""
2)初始化方法(–init–)
"""
类中函数名是__init__的对象方法就是初始化方法
初始化方法是Python魔法方法中的一个,所有的魔法方法方法名前后都有两个下滑线,
并且都不需要程序员来调用
1)__init__在创建类的对象的时候会被自动调用(每次创建都会调用)
2)创建对象的时候需不需要实参,需要几个实参由类中__init__方法决定
"""
class Person:
def __init__(self, name)
print(f'{name}')
p1 = Person('小明')