Day15:模块和异常

1.模块

1)什么是模块

#python中一个py文件就是一个模块
#模块分为系统模块和自定义模块

2)怎么使用模块 - 怎么在一个模块中去使用另外一个模块中的内容

注意:
1)如果一个模块中的内容想要能够被别的模块使用,那么这个模块的名字必须符合变量名的要求
2)符合命名要求的模块中,只有全局变量可以被别的模块使用

3)怎么导入模块 - 要使用别的模块中的内容,必须先导入

1)import 模块名 - 导入指定模块,导入后可以通过’模块名.xxx’的方式去使用模块中所有的全局变量
2)from 模块名 import 变量名1,变量名2,… - 导入指定模块,导入后可以直接使用import后面所有的全局变量
3)from 模块名 import * - 导入指定模块,导入后可以直接使用模块中所有的全局变量
4)import 模块名 as 新模块名 - 导入模块的时候给模块重命名
5)from 模块名 import 变量名1 as 新变量名1,变量名2,… - 重新给指定变量命名

# 导入方式1:
import  test
print(test.a)
print(test.x)
test.func1()

# 导入方式2:
from test import a,x,func1
print(a)
print(x)
print(func1())

# 导入方式3:
from test import *
print(x)
func1()

4)模块重命名

import test as test1
print(test1.a,test1.x)
print(test1.func1())

5)变量重命名

from test import a,x as t_x
print(t_x)

2.导入模块的原理

1)导入原理

当代码执行到导入模块的操作的时候,系统会自动进入被导入的模块,将模块中的代码全部执行一遍
import 和 from-import 在导入模块的时候会自动检测模块是否重复导入,如果已经导入过,不会重复导入

2)阻止导入

from downloadMovies import download
download('蜘蛛侠')

3.异常捕获

1)异常

程序在执行过程中报错,这个叫程序出现异常(错误 == 异常)
异常的出现会终止程序的运行

2)捕获异常 - 让程序在出现异常的时候不报错,并且可以继续执行

1)捕获异常的使用场景:明明知道某个位置可能会出现异常,但是又无法(不愿意)通过修改代码来避免异常,
还想在异常出现的时候程序可以继续执行,就可以对这段代码进行异常捕获
2)语法1: - 获取所有异常

try:
    代码段1(需要捕获异常的代码段)
except:
    代码段2(捕获到异常后会执行的代码)
else:
    代码段3(没有捕获到异常会执行的代码)
其他代码

执行过程:先执行代码段1,如果代码段1没有异常直接执行其他代码;如果代码段1出现异常,马上执行代码段2,再执行其他代码

练习:提示用户输入年龄,如果年龄输入有误,不报错,让用户重新输入,直到输入正确为止

while True:
    try:
        age = int(input('请输入年龄:'))
    except:
        print('年龄输入有误,请重新输入')
    else:
        break

3)语法2: - 捕获特定异常

try:
    代码段1(需要捕获异常的代码)
except 异常类型:
    代码段2(捕获到指定异常后执行的代码)

4)语法3: - 同时捕获多种异常,根据不同类型的异常做相同处理

try:
    代码段1(需要捕获异常的代码)
except (异常类型1,异常类型2,...):
    代码段2(捕获到指定异常后执行的代码)

5)语法4: - 同时捕获多种异常,根据不同类型的异常做不同的处理

try:
    代码段1(需要捕获异常的代码)
except 异常类型1:
    代码段11(捕获到指定异常后执行的代码)
except 异常类型2:
    代码段22(捕获到指定异常后执行的代码)

3)关键字finally(了解)

try:
    代码段1(需要捕获异常的代码)
except 异常类型:
    代码段2(捕获到指定异常后执行的代码)
finally:
    代码段3(无论前面的代码怎么执行的,代码段3都会执行)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值