代码笔记:
'''
异常:程序运行期检测到的错误被称为异常;大多数的异常都不会被程序处理,都以错误信息的形式展现在控制台。
异常处理通常可以使用以下语句:
1.try/except语句:
try:
可能出现异常的代码体(尝试运行的代码,有一定概率会出错)
except:
发生异常时执行的代码
2.try/except...else语句:
try:
执行的代码
except:
发生异常时执行的代码
else:
没有异常执行的代码
3.try-finally语句:
try:
执行的代码
except:
发生异常时执行的代码
else:
没有异常执行的代码
finally:
不管有没有异常都会执行的语句
4.利用traceback可以记录异常:注意要导入traceback包。------>traceback.format_exc()
'''
import traceback
a = int(input('请输入被除数:'))
b = int(input('请输入除数:'))
try:
num = a / b # 可能出现异常的语句(尝试运行的代码,有一定概率会出错)
except:
info = traceback.format_exc() # 使用traceback记录异常
print('0不能作为除数!\n', info)
else:
print(f'输入合法,结果为{num}')
finally:
print('=' * 100)
'''
抛出异常(raise):
格式:raise Exception('提示信息')
需求:用户登录时输入密码,当密码不足标准个数时抛出异常。
分析:用户输入密码,判断密码长度,如果不足6位则抛出自定义异常并捕获。
'''
def login():
password = input('请输入密码:')
if len(password)>=6:
return '输入合法!'
raise Exception('密码输入不合法,请重新输入!')
try:
print(login())
except Exception as e:
print(e)
# 捕获异常是为了检测到异常是继续运行后面的代码,使程序不会停止。
'''
模块:一个模块相当于一个py文件,导入一个模块相当于执行一个py文件。
模块分类:
内置模块:如random、time、logging等模块,直接导入即可使用。
第三方模块(第三方库):Python社区或第三方开发者创建的库和工具,它们扩展了Python的功能。
安装第三方库命令:在控制台输入 pip install 模块名
查看第三方库命令:在控制台输入 pip list
自定义模块:自己在项目中定义的模块。
注意:命名要遵循标识符命名规范,并且不要与内置模块命名冲突,否则将模块功能无法使用。
导入模块:
1.import 模块名1,模块名2,... 可以一次导入多个模块(但不推荐)
调用模块:模块名.功能名
2.from 模块名 import 对象1,对象2,... 导入函数时只需要函数名,不需要小括号。
调用模块:直接写模块名即可
3.from 模块名 import * 从模块中导入所有对象
不建议过多使用from ... import ... 方式导入模块,有时候命名冲突会造成一些错误。
'''
import pytest
print(pytest.name,pytest.age)
pytest.greet()
from pytest import fun1
fun1()
运行结果:
请输入被除数:1
请输入除数:0
0不能作为除数!
Traceback (most recent call last):
File "", line 32, in <module>
num = a / b # 可能出现异常的语句(尝试运行的代码,有一定概率会出错)
ZeroDivisionError: division by zero
====================================================================================================
请输入密码:123
密码输入不合法,请重新输入!
小明 20
这是pytest.py中的greet函数,我的名字:小明,我的年龄:20
这是pytest.py中的fun1函数