异常
- 程序运行时,遇到错误,会停止执行,并提示一些错误信息,这就是异常
- 捕获异常
try: 尝试执行的代码 except: 出现错误的处理 except Exception as var: 将异常类型赋给var变量,因为有需要到的地方 else: 没有异常才会执行的代码 finally: 无论是否有异常,都会执行的代码
- 异常的传递
- 出现异常时,会将异常传递给调用的一方
- 如果传递到主程序都没有异常处理,程序终止
- 使用:
- 在不知道是否会出现异常但又需要执行的代码处
- 在逻辑处理时,代码块只完成一部分情况的处理,为了防止意外发生,需要异常处理
- 主动抛出异常,提示错误,如函数只负责密码输入,长度不正确时,需要其他额外处理,这个时候就可以抛出异常,在异常处理处完成
函数中创建exception对象:ex= Exception(“提示”) def f(list): if list<8: return list[:] ex = Exception("长度必须小于8") raise ex try: f(list) except Exception as result: print(result)
模块
-
导入模块
- import 模块
- from 模块 import …
- 解释器优先搜索当前目录下的文件,有则直接导入模块
- 如果没有,再搜索系统目录
-
模块魔法方法:
- __file__:获取模块的完整路径
- __name__:
- 在本模块内指__mian__
- 在其他模块内是指模块名
-
包:
- 是多个模块的集合
- 在外界使用时,包中必须有__init__模块,指定对外界提供的模块列表
#__init__模块 from . import 模块1 from . import 模块2
-
发布模块
- 创建setup.py
from distutils.core import setup setup(name="package", # 包名 version="1.0", # 版本 description="itheima's 发送和接收消息模块", # 描述信息 long_description="完整的发送和接收消息模块", # 完整描述信息 author="", # 作者 author_email="", # 作者邮箱 url="", # 主页 py_modules=["包.模块1", "包.模块2"])
- 构建模块
在cmd下,python setup.py build - 生成压缩包:
python setup.py sdist - 使用:
python setup.py install
文件
函数 | 说明 |
---|---|
open | 打开文件 |
read | 读取文件 |
write | 写入文件 |
close | 关闭文件 |
- open
访问方式 | 说明 |
---|---|
r | 以只读方式打开文件。文件的指针将会放在文件的开头,这是默认模式。如果文件不存在,抛出异常 |
w | 以只写方式打开文件。如果文件存在会被覆盖。如果文件不存在,创建新文件 |
a | 以追加方式打开文件。如果该文件已存在,文件指针将会放在文件的结尾。如果文件不存在,创建新文件进行写入 |
r+ | 以读写方式打开文件。文件的指针将会放在文件的开头。如果文件不存在,抛出异常 |
w+ | 以读写方式打开文件。如果文件存在会被覆盖。如果文件不存在,创建新文件 |
a+ | 以读写方式打开文件。如果该文件已存在,文件指针将会放在文件的结尾。如果文件不存在,创建新文件进行写入 |
- read
- readline方法:一次读取一行
- readlines方法:读取全部数据并将每一行作为单独一项存入列表中
eval函数
将字符串当成有效表达式来求值
>>> eval('1'+'1')
11
>>> eval('1+1')
2
>>> eval("'*'*10")
'**********'
>>> type(eval("[1,2,3,4]"))
<class 'list'>