一、异常
当python检测到一个错误时,解释器就无法继续执行,反而出现了一些错误提示,这就是所谓的异常
1.捕获异常
try:
检测代码块
except Exception: # Exception 万能异常
若检测到异常,执行此代码
try...except...else 没有捕获到异常执行此代码(与try中的代码同时执行)
finally 无论是否有异常都会执行
2.抛出异常(raise)
- 创建一个Exception(‘xxx’)对象,xxx代表异常提示信息
- raise 抛出这个对象(异常对象)此语句执行后,后面语句都不执行
3.自定义异常
自定义异常类
class 自定义异常类类名(Exception):
pass
主动触发异常现象
raise 异常类对象
4.练习
from functools import reduce
li=[1,2,3]
# reduce(函数,对象) 函数必须为两个参数
print(reduce(lambda x,y :x*y,li))#6
# raise Exception('抛出异常')# 抛出异常
# raise练习
def login():
pwd=input('请输入六位数密码:')
if len(pwd)==6:
return pwd
else:
raise Exception('长度不合适')
try:
print(login()) # 123456
except Exception as e:
print(e)# 长度不合适
二、模块
1.定义
就是py文件,里面定义了一些函数和变量,需要时就可以导入这些模块
py文件两种功能
脚本:一个文件就是整个程序,用来执行1
模块:文件中存放着一些功能,用来被导入使用
if __name__=='__main__':
作用:用来控制py文件在不同的应用场景下执行不同的逻辑
python内置了全局变量__name__:
当文件被当做脚本执行时:__name__=='__main__'
当文件被当做模块导入时:__name__==模块名
2.执行步骤
- 在python模块加载路径中查找相应的模块文件
- 将模块文件编译成中间代码
- 执行模块文件中的代码
3.模块分类
1.内置模块(标准库)
比如 random time 等 大概200多个
查看方法:
import builtins
print(dir(builtins))
2.第三方模块即第三方库
使用pip install 模块名 安装
使用 import 模块名 导入
3.自定义模块 (自己在项目中定义的模块)
导入自定义模块时,模块下有红色波浪线,但执行不报错,一般情况下解决方法:
右键当前文件--Mark Directory as -Source Root
模块名要 遵守命名规范,不要使用中文与特殊字符
4.练习
testmokuia.py
def login():
print('这是登录函数')
login()# 这是登录函数
name='测试模块'
if __name__ == '__main__':
print('测试内置全局变量')# 测试内置全局变量
test.py
#方法一
import testmokuai as t
t.login()#这是登录函数 模块名+方法名
print(t.name)#测试模块
#方法二
from testmokuai import login,name # 方法名,变量名
#from testmokua import * 把模块中的所有内容全部导入
print(name)#测试模块
login()#这是登录函数
*当全世界都说你是疯子的时候,你就离成功不远了