本书简要地介绍标准库的每个模块(共计200个以上),并提供至少一个例子来说明如何使用它. 本书一共包含 360 个例子.本书是超过 3,000 个新闻组讨论的精华部分, 当然也有很多的新脚本, 涵盖标准库的每个角落. ### Python标准库详解 #### 一、核心模块 **1.1 介绍** 核心模块是Python标准库的基础,包含了Python语言最常用的工具和功能。这些模块通常被设计为轻量级且高性能,以便于快速执行关键任务。 **1.2 __builtin__ 模块** - **简介**:此模块包含了Python的所有内置函数和常量。 - **示例**: ```python print(len("Hello")) # 使用内置函数len()计算字符串长度 ``` **1.3 exceptions 模块** - **简介**:虽然在Python 3中这个模块已经被移除,但在Python 2中它是异常处理的核心。提供了所有异常类的定义。 - **示例**: ```python try: x = 1 / 0 except ZeroDivisionError as e: print("发生错误:", e) ``` **1.4 os 模块** - **简介**:用于与操作系统交互,例如读取环境变量、改变当前工作目录等。 - **示例**: ```python import os print(os.getcwd()) # 获取当前工作目录 ``` **1.5 os.path 模块** - **简介**:提供了路径操作的实用函数,如拆分路径、合并路径等。 - **示例**: ```python import os.path print(os.path.join("/usr", "local", "bin")) # 合并路径 ``` **1.6 stat 模块** - **简介**:用于处理文件的状态,比如文件的权限位。 - **示例**: ```python import os, stat mode = os.stat("test.txt").st_mode if mode & stat.S_IRUSR: # 检查用户是否有读权限 print("用户有读权限") ``` **1.7 string 模块** - **简介**:提供了各种字符串常量和其他字符串处理工具。 - **示例**: ```python import string print(string.ascii_letters) # 打印所有的ASCII字母 ``` **1.8 re 模块** - **简介**:提供了正则表达式的支持,用于文本匹配和搜索。 - **示例**: ```python import re pattern = r"\b[A-Z]+\b" # 匹配大写的单词 text = "This is A TEST" matches = re.findall(pattern, text) print(matches) ``` **1.9 math 模块** - **简介**:提供了数学相关的函数和常量。 - **示例**: ```python import math print(math.sqrt(16)) # 计算平方根 ``` **1.10 cmath 模块** - **简介**:提供了复数的数学运算。 - **示例**: ```python import cmath print(cmath.sqrt(-1)) # 计算复数的平方根 ``` **1.11 operator 模块** - **简介**:提供了一系列对应于Python内置操作符的函数。 - **示例**: ```python import operator x, y = 10, 5 print(operator.add(x, y)) # 相当于x + y ``` **1.12 copy 模块** - **简介**:提供了浅复制和深复制对象的方法。 - **示例**: ```python import copy original_list = [[1, 2], [3, 4]] copied_list = copy.deepcopy(original_list) original_list[0][0] = "changed" print(original_list, copied_list) # 输出显示列表没有改变 ``` **1.13 sys 模块** - **简介**:提供了访问和修改解释器状态的方式。 - **示例**: ```python import sys print(sys.version) # 获取Python版本 ``` **1.14 atexit 模块** - **简介**:允许注册退出时调用的函数。 - **示例**: ```python import atexit def goodbye(): print("再见!") atexit.register(goodbye) ``` **1.15 time 模块** - **简介**:提供了时间相关的功能,如获取当前时间、暂停程序等。 - **示例**: ```python import time print(time.strftime("%Y-%m-%d %H:%M:%S")) # 获取当前日期时间 ``` **1.16 types 模块** - **简介**:提供了类型对象,用于比较类型。 - **示例**: ```python import types print(isinstance([], types.ListType)) # 检查类型 ``` **1.17 gc 模块** - **简介**:提供了垃圾回收器的接口。 - **示例**: ```python import gc gc.enable() # 启用垃圾回收 ``` #### 二、更多标准模块 **2.1 概览** 这部分包含了更广泛的功能和工具,包括文件输入输出、临时文件处理等。 **2.2 fileinput 模块** - **简介**:用于顺序读取多个文件或标准输入。 - **示例**: ```python import fileinput for line in fileinput.input(["file1.txt", "file2.txt"]): print(line) ``` **2.3 shutil 模块** - **简介**:提供了高级文件操作服务,如复制文件和文件夹等。 - **示例**: ```python import shutil shutil.copyfile("src.txt", "dst.txt") # 复制文件 ``` **2.4 tempfile 模块** - **简介**:用于创建临时文件和目录。 - **示例**: ```python import tempfile with tempfile.TemporaryFile() as tmp: tmp.write(b"Hello") tmp.seek(0) print(tmp.read()) ``` **2.5 StringIO 模块** - **简介**:提供了一个在内存中操作文本数据的接口。 - **示例**: ```python from io import StringIO s = StringIO() s.write("Hello") s.seek(0) print(s.read()) ``` **2.6 cStringIO 模块** - **简介**:这是一个更快的StringIO实现,但在Python 3中已经被移除。 - **示例**: ```python from cStringIO import StringIO s = StringIO() s.write("Hello") s.seek(0) print(s.read()) ``` **2.7 mmap 模块** - **简介**:提供了对内存映射文件的支持。 - **示例**: ```python import mmap with open("large_file.dat", "r+b") as f: mm = mmap.mmap(f.fileno(), 0) mm[0:7] = b"Hello!" ``` **2.8 UserDict 模块** - **简介**:提供了用户可以继承的字典对象基类。 - **示例**: ```python from UserDict import UserDict class MyDict(UserDict): def __init__(self): super(MyDict, self).__init__() self["name"] = "Alice" d = MyDict() print(d["name"]) ``` **2.9 UserList 模块** - **简介**:提供了用户可以继承的列表对象基类。 - **示例**: ```python from UserList import UserList class MyList(UserList): def append(self, item): if item not in self.data: self.data.append(item) lst = MyList([1, 2, 3]) lst.append(4) print(lst.data) ``` **2.10 UserString 模块** - **简介**:提供了用户可以继承的字符串对象基类。 - **示例**: ```python from UserString import UserString class MyStr(UserString): def repeat(self, n): return self.data * n s = MyStr("hello") print(s.repeat(3)) ``` **2.11 traceback 模块** - **简介**:提供了获取和打印异常跟踪信息的方法。 - **示例**: ```python import traceback try: 1 / 0 except Exception as e: traceback.print_exc() ``` **2.12 errno 模块** - **简介**:提供了系统错误码的符号名称。 - **示例**: ```python import errno try: open("nonexistentfile", "r") except IOError as e: if e.errno == errno.ENOENT: print("文件不存在") ``` **2.13 getopt 模块** - **简介**:用于解析命令行参数。 - **示例**: ```python import getopt, sys options, remainder = getopt.getopt(sys.argv[1:], 'o:v') for opt, arg in options: if opt == '-o': print('output file is:', arg) ``` **2.14 getpass 模块** - **简介**:提供了安全地从终端读取密码的方法。 - **示例**: ```python import getpass password = getpass.getpass("请输入密码: ") print("密码是:", password) ``` **2.15 glob 模块** - **简介**:用于匹配文件名模式。 - **示例**: ```python import glob for filename in glob.glob("*.txt"): print(filename) ``` **2.16 fnmatch 模块** - **简介**:提供了文件名匹配的方法。 - **示例**: ```python import fnmatch for filename in ["foo.txt", "bar.py"]: if fnmatch.fnmatch(filename, "*.txt"): print("匹配:", filename) ``` **2.17 random 模块** - **简介**:提供了随机数生成器。 - **示例**: ```python import random print(random.randint(1, 10)) # 生成1到10之间的随机整数 ``` **2.18 whrandom 模块** - **简介**:这是一个已被废弃的模块,用于生成更好的随机数。 - **示例**: ```python import whrandom whrandom.seed(10) print(whrandom.random()) ``` **2.19 md5 模块** - **简介**:提供了MD5哈希算法的支持。 - **示例**: ```python import hashlib h = hashlib.md5() h.update(b"Hello") print(h.hexdigest()) ``` **2.20 sha 模块** - **简介**:提供了SHA哈希算法的支持。 - **示例**: ```python import hashlib h = hashlib.sha1() h.update(b"Hello") print(h.hexdigest()) ``` **2.21 crypt 模块** - **简介**:提供了加密口令的功能。 - **示例**: ```python import crypt hashed = crypt.crypt("password", "$6$rounds=5000$salt") print(hashed) ``` **2.22 rotor 模块** - **简介**:提供了基于Enigma机器的加密解密方法。 - **示例**: ```python import rotor machine = rotor.RotorMachine() encrypted = machine.encrypt("HELLO WORLD") print(encrypted) ``` **2.23 zlib 模块** - **简介**:提供了压缩和解压文件的方法。 - **示例**: ```python import zlib data = b"Hello world" compressed = zlib.compress(data) decompressed = zlib.decompress(compressed) print(decompressed) ``` **2.24 code 模块** - **简介**:提供了启动交互式解释器的方法。 - **示例**: ```python import code code.interact(local=dict(globals(), **locals())) ``` 以上内容涵盖了Python标准库中的部分核心模块和更多的标准模块。通过这些模块的学习和实践,开发者能够更好地利用Python的强大功能来解决实际问题。

































剩余328页未读,继续阅读


- 粉丝: 5
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 智能语音:争夺人工智能皇冠上的明珠.docx
- 基于三点四面的全国职业技能大赛计算机类赛项设置探讨.docx
- PLC对专用镗孔机床的电气控制研究设计.doc
- 计算机硬件实验平台存在的不足和改进策略分析.docx
- 区块链在电子商务中的应用探究.docx
- 基于单片机的病床呼叫系统大学本科方案设计书.doc
- 软件开发过程中各类人员共通心理剖析.docx
- Python随机输出562进制4位数成语程序代码.txt
- Apriori算法在棉花病虫害分析中的应用.doc
- 计算机视觉算法工程师面试手撕代码算法题汇总
- 大数据时代档案数据化的前景展望:意义与困境.docx
- 数据库设计方案参考标准.docx
- 兰州道路交通网络信息查询课程实施方案.doc
- 第五章SCADA系统MIS系统和GIS系统.doc
- Python随机输出562进制4位数符文字公式代码.txt
- 医学图像处理课程应用型教学的探索与实践.docx


