兴力网站建设,可以做问卷挣钱的网站,网站数据中心的建设,建设局网站投诉开发商1. 标准库介绍 Python 标准库非常庞大#xff0c;所提供的组件涉及范围十分广泛#xff0c;正如以下内容目录所显示的。这个库包含了多个内置模块 (以 C 编写)#xff0c;Python 程序员必须依靠它们来实现系统级功能#xff0c;例如文件 I/O#xff0c;此外还有大量以 Pyt…
1. 标准库介绍 Python 标准库非常庞大所提供的组件涉及范围十分广泛正如以下内容目录所显示的。这个库包含了多个内置模块 (以 C 编写)Python 程序员必须依靠它们来实现系统级功能例如文件 I/O此外还有大量以 Python 编写的模块提供了日常编程中许多问题的标准解决方案。其中有些模块经过专门设计通过将特定平台功能抽象化为平台中立的 API 来鼓励和加强 Python 程序的可移植性。 Windows 版本的 Python 安装程序通常包含整个标准库往往还包含许多额外组件。对于类 Unix 操作系统Python 通常会分成一系列的软件包因此可能需要使用操作系统所提供的包管理工具来获取部分或全部可选组件。 在标准库以外还存在成千上万并且不断增加的其他组件集从单独的程序和模块到软件包以及完整的应用程序开发框架这些组件集可以从Python 包索引 https://pypi.org 获取。
2. 常见的一些标准库 下面的表格罗列了一些常用的模块但还只是标准库的很少的一部分具体使用需要根据需求来定。
模块名称描述功能和示例math数学运算函数提供基本的数学运算如三角函数、对数等。例如math.sin(90) 返回正弦值 1.0。random生成伪随机数生成随机数可用于模拟随机事件。例如random.randint(1, 10) 生成1到10之间的随机整数。os操作系统功能提供与操作系统交互的功能如文件和目录操作。例如os.listdir(.) 返回当前目录下的文件列表。sys提供 Python 解释器的变量和函数提供访问和操作 Python 解释器的变量和功能。例如sys.argv 包含命令行参数的列表。datetime处理日期和时间提供处理日期和时间的类和函数。例如datetime.now() 返回当前日期和时间。time处理时间和时间戳提供处理时间和时间戳的函数。例如time.sleep(2) 暂停程序执行 2 秒。calendar处理日期和时间的日历函数提供处理日期和时间的日历功能。例如calendar.isleap(2023) 判断2023年是否为闰年。collections高性能容器数据类型提供额外的数据类型如命名元组、计数器等。例如collections.Counter([1, 2, 1, 3, 2, 4]) 统计元素出现次数。itertools提供用于操作迭代器的函数提供迭代器操作的工具函数。例如itertools.product(AB, repeat2) 返回笛卡尔积。json处理 JSON 数据格式提供 JSON 数据的编码和解码功能。例如json.dumps({name: John, age: 30}, indent2) 将字典转换为美观的 JSON 字符串。re正则表达式操作提供正则表达式的功能用于模式匹配。例如re.search(r\d, Age: 30) 匹配字符串中的数字。urllib处理 URL提供处理 URL 的模块包括打开、读取、解析 URL。例如urllib.request.urlopen(https://www.example.com) 打开一个 URL。http提供基本的 HTTP 服务器和客户端功能提供创建简单 HTTP 服务器和客户端的功能。例如http.server.SimpleHTTPRequestHandler 创建一个简单的 HTTP 服务器。socket提供套接字编程的接口提供网络编程的功能包括创建套接字、发送和接收数据。例如创建一个服务器套接字。email处理电子邮件提供创建和解析电子邮件的功能。例如创建一个简单的文本邮件。sqlite3SQLite 数据库接口提供与 SQLite 数据库交互的功能。例如连接到数据库、执行 SQL 查询。csv处理 CSV 文件格式提供读写 CSV 文件的功能。例如读取和写入 CSV 文件。xml处理 XML 数据提供处理 XML 数据的功能。例如解析和生成 XML 文件。tkinterGUI 编程工具包提供创建图形用户界面的功能。例如创建一个简单的窗口和按钮。threading多线程编程提供创建和管理线程的功能。例如创建一个简单的线程。multiprocessing多进程编程提供创建和管理进程的功能。例如创建一个简单的子进程。subprocess启动和控制子进程提供启动和控制子进程的功能。例如执行外部命令。logging日志记录工具提供记录日志的功能。例如配置日志记录器并记录消息。unittest单元测试框架提供单元测试的功能。例如编写和运行测试用例。doctest用于测试文档中的示例代码提供从文档字符串中提取和运行测试的功能。例如在文档中编写测试用例。argparse命令行参数解析提供解析命令行参数的功能。例如定义和解析命令行参数。pickle对象序列化和反序列化提供将 Python 对象转换为字节流的功能。例如将对象保存到文件和从文件加载。shutil文件操作工具提供对文件和目录进行高级操作的功能。例如复制、移动文件和目录。gzip支持对 GZIP 格式的文件进行压缩和解压缩提供对 GZIP 格式文件的压缩和解压缩功能。例如压缩和解压缩文件。tarfile处理 tar 文件格式提供处理 tar 文件的功能。例如创建和提取 tar 文件。zipfile处理 ZIP 文件格式提供处理 ZIP 文件的功能。例如创建和提取 ZIP 文件。
3. 部分模块的示例
3.1 操作系统 - os 提供与操作系统交互的功能包括文件和目录操作。
import os# 获取当前工作目录
current_directory os.getcwd()
print(Current Directory:, current_directory)# 列出目录中的文件
files_in_directory os.listdir(current_directory)
print(Files in Directory:, files_in_directory)# 创建目录
os.mkdir(example_directory)# 删除目录
os.rmdir(example_directory)
3.2 文件通配符 - glob 提供文件名的模式匹配功能。
import glob# 匹配当前目录下所有的 .txt 文件
txt_files glob.glob(*.txt)
print(f匹配的 .txt 文件{txt_files})
3.3 命令行参数 - sys 和 argparse sys 提供对 Python 解释器的变量和函数的访问而 argparse 用于解析命令行参数。
import sys
import argparse# 使用 sys 获取命令行参数
script_name sys.argv[0]
print(f脚本名称{script_name})# 使用 argparse 解析命令行参数
parser argparse.ArgumentParser(description描述脚本用途)
parser.add_argument(--input, help输入文件路径)
args parser.parse_args()
input_file args.input
print(f输入文件路径{input_file})
3.4 错误输出重定向和程序终止 - sys
import systry:# 模拟错误raise ValueError(这是一个错误)
except ValueError as e:# 将错误信息输出到标准错误流print(f发生错误{e}, filesys.stderr)# 终止程序sys.exit(1)
3.5 字符串正则匹配 - re 提供正则表达式的功能用于模式匹配。 更多关于Python正则匹配可以参考下面博文 Python基础正则表达式regular expression详解
import re# 匹配字符串中的数字
result re.search(r\d, Age: 30)
if result:matched_number result.group()print(f匹配到的数字{matched_number})
3.6 数学 - math 提供数学运算函数
import math# 计算正弦值
sin_value math.sin(math.radians(90))
print(f正弦值{sin_value})
3.7 访问互联网 - urllib 提供处理 URL 的模块包括打开、读取、解析 URL。
from urllib.request import urlopen# 打开并读取 URL 内容
with urlopen(https://www.example.com) as response:content response.read().decode(utf-8)print(fURL 内容{content})
3.8 日期和时间 - datetime 提供处理日期和时间的类和函数。
from datetime import datetime# 获取当前日期和时间
current_datetime datetime.now()
print(f当前日期和时间{current_datetime})
3.9 数据压缩 - gzip 提供对 GZIP 格式的文件进行压缩和解压缩功能。
import gzip# 压缩文件
with open(example.txt, rb) as file:with gzip.open(example.txt.gz, wb) as compressed_file:compressed_file.writelines(file)# 解压缩文件
with gzip.open(example.txt.gz, rb) as compressed_file:content compressed_file.read().decode(utf-8)print(f解压缩后的内容{content})
3.10 性能度量 - timeit 用于测试代码段的执行时间
import timeit# 测量代码执行时间
def example_function():result sum(range(1000))execution_time timeit.timeit(example_function, number10000)
print(f代码执行时间{execution_time} 秒)
3.11 测试模块 - unittest 提供单元测试功能
import unittest# 编写测试用例
class ExampleTestCase(unittest.TestCase):def test_addition(self):self.assertEqual(1 1, 2)# 运行测试
if __name__ __main__:unittest.main()
4. 使用标准库注意事项 使用 Python 标准库是编写稳健、可维护和跨平台的 Python 代码的关键部分。
版本兼容性 不同版本的 Python 可能会引入新的模块或对现有模块进行更改。确保你的代码适用于你所使用的 Python 版本查阅相应版本的官方文档。异常处理 标准库中的函数和模块可能会引发异常。在使用它们时确保进行适当的异常处理以防止程序崩溃。文档查阅 Python 提供了详细的官方文档其中包含对每个模块和函数的详细说明。在使用标准库的特定部分之前请查阅相应的文档以了解其功能和用法。模块导入 了解如何正确导入模块是重要的。有时候你可能只需要导入模块的一部分而不是全部。例如使用 from module import function 语法。模块的性能 一些模块可能会影响程序的性能。在处理大量数据或需要高性能的情况下考虑使用专门设计的库或工具。可移植性 虽然标准库是 Python 的一部分但并不是所有模块在所有平台上都是完全相同的。确保你的代码在目标平台上能够正确运行。虚拟环境 在项目中使用虚拟环境是一个良好的实践它可以确保你的项目在不同环境中具有相同的依赖关系。第三方库 在某些情况下可能有更好的第三方库可用提供了比标准库更强大或更专业的功能。在选择使用标准库还是第三方库时要根据具体需求和项目要求做出明智的选择。更新和维护 定期检查 Python 的更新并确保你的代码能够在最新版本的 Python 中运行。标准库中的一些模块可能会在后续版本中进行改进或修复 bug。国际化 如果你的应用程序涉及到国际化和本地化了解标准库中与这些方面相关的模块如 locale 和 gettext。
5. 参考 官网 https://docs.python.org/zh-cn/3/library/index.html 菜鸟教程 https://www.runoob.com/python3/python3-stdlib.html 文章转载自: http://www.morning.tnfyj.cn.gov.cn.tnfyj.cn http://www.morning.bdgb.cn.gov.cn.bdgb.cn http://www.morning.phlrp.cn.gov.cn.phlrp.cn http://www.morning.zfqr.cn.gov.cn.zfqr.cn http://www.morning.rkkpr.cn.gov.cn.rkkpr.cn http://www.morning.fbdkb.cn.gov.cn.fbdkb.cn http://www.morning.bklhx.cn.gov.cn.bklhx.cn http://www.morning.yrxcn.cn.gov.cn.yrxcn.cn http://www.morning.gkjyg.cn.gov.cn.gkjyg.cn http://www.morning.gyrdn.cn.gov.cn.gyrdn.cn http://www.morning.tsgxz.cn.gov.cn.tsgxz.cn http://www.morning.qyllw.cn.gov.cn.qyllw.cn http://www.morning.wglhz.cn.gov.cn.wglhz.cn http://www.morning.gccrn.cn.gov.cn.gccrn.cn http://www.morning.kndt.cn.gov.cn.kndt.cn http://www.morning.qwwcf.cn.gov.cn.qwwcf.cn http://www.morning.xbhpm.cn.gov.cn.xbhpm.cn http://www.morning.mtdfn.cn.gov.cn.mtdfn.cn http://www.morning.mlnbd.cn.gov.cn.mlnbd.cn http://www.morning.wfjrl.cn.gov.cn.wfjrl.cn http://www.morning.rjmd.cn.gov.cn.rjmd.cn http://www.morning.hxbps.cn.gov.cn.hxbps.cn http://www.morning.xscpq.cn.gov.cn.xscpq.cn http://www.morning.cwknc.cn.gov.cn.cwknc.cn http://www.morning.qpljg.cn.gov.cn.qpljg.cn http://www.morning.rqnzh.cn.gov.cn.rqnzh.cn http://www.morning.drzkk.cn.gov.cn.drzkk.cn http://www.morning.tbstj.cn.gov.cn.tbstj.cn http://www.morning.rqgbd.cn.gov.cn.rqgbd.cn http://www.morning.jbxd.cn.gov.cn.jbxd.cn http://www.morning.tzzxs.cn.gov.cn.tzzxs.cn http://www.morning.zsyrk.cn.gov.cn.zsyrk.cn http://www.morning.zsfooo.com.gov.cn.zsfooo.com http://www.morning.lnfkd.cn.gov.cn.lnfkd.cn http://www.morning.nkjnr.cn.gov.cn.nkjnr.cn http://www.morning.lcjw.cn.gov.cn.lcjw.cn http://www.morning.psxfg.cn.gov.cn.psxfg.cn http://www.morning.grxyx.cn.gov.cn.grxyx.cn http://www.morning.cfqyx.cn.gov.cn.cfqyx.cn http://www.morning.smj79.cn.gov.cn.smj79.cn http://www.morning.mlfmj.cn.gov.cn.mlfmj.cn http://www.morning.jwskq.cn.gov.cn.jwskq.cn http://www.morning.bkgfp.cn.gov.cn.bkgfp.cn http://www.morning.hqxyt.cn.gov.cn.hqxyt.cn http://www.morning.qjfkz.cn.gov.cn.qjfkz.cn http://www.morning.yhrfg.cn.gov.cn.yhrfg.cn http://www.morning.jlxld.cn.gov.cn.jlxld.cn http://www.morning.cyyhy.cn.gov.cn.cyyhy.cn http://www.morning.bsrp.cn.gov.cn.bsrp.cn http://www.morning.mkygc.cn.gov.cn.mkygc.cn http://www.morning.xctdn.cn.gov.cn.xctdn.cn http://www.morning.jjnql.cn.gov.cn.jjnql.cn http://www.morning.bxgpy.cn.gov.cn.bxgpy.cn http://www.morning.hqnsf.cn.gov.cn.hqnsf.cn http://www.morning.qqhersx.com.gov.cn.qqhersx.com http://www.morning.rmkyb.cn.gov.cn.rmkyb.cn http://www.morning.mmjyk.cn.gov.cn.mmjyk.cn http://www.morning.dkslm.cn.gov.cn.dkslm.cn http://www.morning.lkxzb.cn.gov.cn.lkxzb.cn http://www.morning.wcft.cn.gov.cn.wcft.cn http://www.morning.rrwft.cn.gov.cn.rrwft.cn http://www.morning.clwhf.cn.gov.cn.clwhf.cn http://www.morning.qjghx.cn.gov.cn.qjghx.cn http://www.morning.nlgyq.cn.gov.cn.nlgyq.cn http://www.morning.wjxyg.cn.gov.cn.wjxyg.cn http://www.morning.wnhgb.cn.gov.cn.wnhgb.cn http://www.morning.xcyzy.cn.gov.cn.xcyzy.cn http://www.morning.ppdr.cn.gov.cn.ppdr.cn http://www.morning.bdsyu.cn.gov.cn.bdsyu.cn http://www.morning.npmx.cn.gov.cn.npmx.cn http://www.morning.qmnhw.cn.gov.cn.qmnhw.cn http://www.morning.zlnyk.cn.gov.cn.zlnyk.cn http://www.morning.rbnp.cn.gov.cn.rbnp.cn http://www.morning.hxxwq.cn.gov.cn.hxxwq.cn http://www.morning.kybpj.cn.gov.cn.kybpj.cn http://www.morning.bpmfq.cn.gov.cn.bpmfq.cn http://www.morning.rnhh.cn.gov.cn.rnhh.cn http://www.morning.zdgp.cn.gov.cn.zdgp.cn http://www.morning.nydtt.cn.gov.cn.nydtt.cn http://www.morning.jygsq.cn.gov.cn.jygsq.cn