栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python的异常和包

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python的异常和包

1. 异常 1.1 异常的写法 1.1.1 捕获所有异常
try:
  	可能发生异常的代码
except:
  	如果出现异常执行的代码
else:
  	没有异常执行的代码
finally:
  	无论是否异常都要执行的代码
  • else:当没有异常时会执行的代码
  • finally:无论有没有异常都会执行的代码
1.1.2 捕获指定异常
except 异常类型:
  	代码

except (异常类型1,异常类型2) as xx:
	代码
try:
    f = open('test.txt', 'r')
except Exception as result:
    f = open('test.txt', 'w')
else:
    print('没有异常,真开心')
finally:
    f.close()
1.2 自定义异常
# 自定义异常类,继承Exception
class ShortInputError(Exception):
    def __init__(self, length, min_len):
        self.length = length
        self.min_len = min_len

    # 设置抛出异常的描述信息
    def __str__(self):
        return f'你输入的长度是{self.length}, 不能少于{self.min_len}个字符'

def main():
    try:
        con = input('请输入密码:')
        if len(con) < 3:
            raise ShortInputError(len(con), 3)
    except Exception as result:
        print(result)
    else:
        print('密码已经输入完成')


main()
2. 模块 2.1 导入模块
  • import 模块名
  • from 模块名 import 功能名
  • from 模块名 import *
  • import 模块名 as 别名
  • from 模块名 import 功能名 as 别名
2.2 制作模块
  • python中每一个python文件都可以作为一个模块
2.3 测试自制模块
  • 在自制模块中添加测试代码
def testA(a, b):
    print(a + b)

# 只在当前文件中调用该函数,其他导入的文件内不符合该条件,则不执行testA函数调用
if __name__ == '__main__':
    testA(1, 1)
2.4 模块定位顺序
  1. 当前目录
  2. 如果不在当前目录,Python则搜索在shell变量PYTHONPATH下的每个目录。
  3. 如果都找不到,Python会察看默认路径。UNIX下,默认路径一般为/usr/local/lib/python/
2.5 __all__
  • 如果一个模块文件中有__all__列表变量,当使用from xxx import *导入时,只能导入这个列表中的元素。
__all__ = ['testA']

def testA():
    print('testA')

def testB():
    print('testB')
3. 包 3.1 制作包
  • 新建包后,包内部需要创建一个名称为__init__.py文件,这个文件控制着包的导入行为。
3.2 导入包 3.2.1 方式一
import 包名.模块名

包名.模块名.目标
3.2.2 方式二
  • 必须在__init__.py文件中添加__all__ = [],控制允许导入的模块列表。
from 包名 import *
模块名.目标
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/499228.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号