python模块
模块是一个包含所有你定义的函数和变量的文件,其后缀名是.py。模块可以被别的程序引入,以使用该模块中的函数等功能。这也是使用python标准库的方法。
模块就是程序
每个扩展名为.py的Python程序都是一个独立的模块(Module)
模块能定义函数、类和变量,让你能够有逻辑地组织你的Python代码段
包(package)是放在一个文件夹里的模块集合
每一个包目录下面都会有一个__init__.py的文件,这个文件是必须存在的,否则,Python就把这个目录当成普通目录,而不是一个包。init.py可以是空文件,也可以有Python代码
import模块[as别名]
将模块中的函数等名称导入当前程序在调用模块中的函数的时候,需要加上模块的命名空间
可以给导入的命名空间替换一个新的名字
引用方法:模块.名称
from模块import函数:引入模块中的某个函数
调用时不需要再加上命名空间
from…import*语句
把一个模块的所有内容全都导入到当前的命名空间也是可行的
dir()函数
内置的函数dir()可以找到模块内定义的所有名称
Python语言标准库
标准库
在安装Python时就默认已经安装好的模块,
Python具有功能强大的标准库
数字和数学模块
numbers:数字抽象基类
math:数学函数
cmath:复数的数学函数
decimal:十进制定点和浮点算术
fractions:有理数
random:生成伪随机数
statistics:数学统计功能
数据类型
datetime:基本日期和时间类型
calendar:与日历相关的一般功能
collections:容器数据类型
heapq:堆队列算法
bisect:数组二分算法
array:高效的数值数组
weakref:弱引用
types:动态类型创建和内置类型的名称
copy:浅层和深层复制操作
pprint:格式化输出
reprlib:备用repr()实现
enum:支持枚举
功能编程模块
itertools:为高效循环,创建迭代器的函数
functools:可调用对象的高阶函数和操作
operator:标准运算符作为函数
数据持久化
pickle:Python对象序列化
copyreg:注册pickle支持功能
shelve:Python对象持久化
marshal:内部Python对象序列化
dbm:与Unix“数据库”的接口
sqlite3:SQLite数据库的DBAPI2.0接口
数据压缩和存档
zlib:与gzip兼容的压缩
gzip/bz2:支持gzip/bzip2文件
lzma:使用LZMA算法进行压缩
zipfile:使用ZIP存档
tarfile:读取和写入tar归档文件
文件格式
csv:CSV文件读写
configparser:配置文件解析器
netrc:netrc文件处理xdrlib:对XDR数据进行编码和解码
plistlib:生成并解析
MacOSX.plist文件Python语言标准库
文件和目录访问
pathlib:面向对象的文件系统路径
os.path:常见的路径名操作
fileinput:迭代多个输入流中的行
stat:解释stat()结果
filecmp:文件和目录比较
tempfile:生成临时文件和目录
glob:Unix样式路径名模式扩展
fnmatch:Unix文件名模式匹配
linecache:随机访问文本行
shutil:高级文件操作
macpath:MacOS9路径操作函数
通用操作系统服务
os:其他操作系统接口
io:用于处理流的核心工具
time:时间访问和转换
argparse:用于命令行选项,参数和子命令的解析器
getopt:用于命令行选项的C风格解析器
logging:Python的日志记录工具
getpass:便携式密码输入
curses:字符单元格显示的终端处理
platform:访问底层平台的标识数据
errno:标准errno系统符号
ctypes:Python的外部函数库Python语言标准库
并发执行
threading:基于线程的并行性
multiprocessing:基于进程的并行性
concurrent.futures:启动并行任务
subprocess:子流程管理
sched:事件调度程序
queue:同步的队列类
_thread:低级线程API
加密服务
hashlib:安全哈希和消息摘要算法接口
hmac:用于消息身份验证的密钥哈希算法
secrets:生成用于管理机密的安全随机数
网络和进程间通信
asyncio:异步I/O
socket:低级网络接口
ssl:套接字对象的TLS/SSL包装器
select:等待I/O完成
selectors:高级I/O复用
asyncore:异步套接字处理程序
asynchat:异步套接字命令/响应处理程序
signal:设置异步事件的处理程序
mmap:内存映射文件支持Python语言标准库
互联网数据处理
email:电子邮件和MIME处理包
json:JSON编码器和解码器
mailcap:Mailcap文件处理
mailbox:以各种格式处理邮箱
mimetypes:将文件名映射到MIME类型
base64:Base16/Base32/Base64/Base85数据编码
binhex:对binhex4文件进行编码和解码
binascii:在二进制和ASCII之间转换
quopri:对MIME引用的可打印数据进行编码和解码
uu:对uuencode文件进行编码和解码
互联网协议和支持
webbrowser:Web浏览器控制器
cgi:通用网关接口支持
cgitb:CGI脚本的回溯管理器
wsgiref:WSGI实用程序和参考实现
urllib:URL处理模块