第八章 常用模块

第零章 学前准备
第一章 数据结构 – 基本数据类型
第一章 数据结构 – 字符串
第一章 数据结构 – 列表、元组和切片
第一章 数据结构 – 字典
第一章 数据结构 – 集合
第一章 – 数组、队列、枚举
第一章 数据结构 – 序列分类
第二章 控制流程
第三章 函数也是对象 – 函数定义以及参数
第三章 函数也是对象 – 高阶函数以及装饰器
第三章 函数也是对象 – lambda 表达式、可调用函数及内置函数
第四章 面向对象编程 – 自定义类、属性、方法和函数
第四章 面向对象编程–魔术方法1
第四章 面向对象编程 – 魔术方法2
第四章 面向对象编程 – 可迭代的对象、迭代器和生成器
第四章 面向对象编程 – 继承、接口
第四章 面向对象编程 – 对象引用
第四章 面向对象编程–案例
第五章 文件操作
第六章 异常
第七章 基于线程的并行—threading
第七章 基于线程的并行—锁对象、递归锁对象、条件对象
第七章 基于线程的并行—信号量对象、事件对象、定时器对象、栅栏对象
第八章 常用模块


文章目录

第八章 常用模块

8.1 os多种操作系统接口

8.1.1 常用函数介绍

  1. os.environ:一个 mapping 对象,其中键值是代表进程环境的字符串。 例如,environ['HOME'] 是你的主目录(在某些平台上)的路径名。
  2. os.chdir(path):将当前工作目录更改为 path
  3. os.getcwd():返回表示当前工作目录的字符串。
  4. os.listdir(path='.'):返回一个包含由 path 指定目录中条目名称组成的列表。 该列表按任意顺序排列,并且不包括特殊条目 ‘.’ 和 ‘…’,即使它们存在于目录中。 如果有文件在调用此函数期间在被移除或添加到目录中,是否要包括该文件的名称并没有规定。
  5. os.mkdir(path, mode=0o777, *, dir_fd=None):创建一个名为 path 的目录,应用以数字表示的权限模式 mode。如果目录已经存在, FileExistsError 会被提出。如果路径中的父目录不存在,则会引发 FileNotFoundError
  6. os.makedirs(name, mode=0o777, exist_ok=False):递归目录创建函数。与 mkdir() 类似,但会自动创建到达最后一级目录所需要的中间目录。
  7. os.remove(path, *, dir_fd=None):Remove (delete) the file path. If path is a directory, an OSError is raised. Use rmdir() to remove directories. If the file does not exist, a FileNotFoundError is raised.
  8. os.removedirs(name):递归删除目录。工作方式类似于 rmdir(),不同之处在于,如果成功删除了末尾一级目录,removedirs() 会尝试依次删除 path 中提到的每个父目录,直到抛出错误为止(但该错误会被忽略,因为这通常表示父目录不是空目录)。例如,os.removedirs('foo/bar/baz') 将首先删除目录 'foo/bar/baz',然后如果 'foo/bar''foo' 为空,则继续删除它们。如果无法成功删除末尾一级目录,则抛出 OSError 异常。
  9. os.rename(src, dst, *, src_dir_fd=None, dst_dir_fd=None):将文件或目录 src 重命名为 dst。在 Windows 上,如果 dst 已存在,则抛出 FileExistsError 异常。
  10. os.renames(old, new):递归重命名目录或文件。工作方式类似 rename(),除了会首先创建新路径所需的中间目录。重命名后,将调用 removedirs() 删除旧路径中不需要的目录。
  11. os.replace(src, dst, *, src_dir_fd=None, dst_dir_fd=None):将文件或目录 src 重命名为 dst。如果 dst 是非空目录,将抛出 OSError 异常。如果 dst 已存在且为文件,则在用户具有权限的情况下,将对其进行静默替换。
  12. os.rmdir(path, *, dir_fd=None):Remove (delete) the directory path. If the directory does not exist or is not empty, a FileNotFoundError or an OSError is raised respectively. In order to remove whole directory trees, shutil.rmtree() can be used.
  13. os.walk(top, topdown=True, onerror=None, followlinks=False):生成目录树中的文件名,方式是按上->下或下->上顺序浏览目录树。对于以 top 为根的目录树中的每个目录(包括 top 本身),它都会生成一个三元组 (dirpath, dirnames, filenames)
  14. os.system(command):在子外壳程序中执行此命令(一个字符串)。 这是通过调用标准 C 函数 system() 来实现的,并受到同样的限制。 对 sys.stdin 的更改等不会反映在所执行命令的环境中。 如果 command 生成了任何输出,它将被发送到解释器的标准输出流。 C 标准没有指明这个 C 函数返回值的含义,因此这个 Python 函数的返回值取决于具体系统。
  15. os.startfile(path[, operation][, arguments][, cwd][, show_cmd]):使用已关联的应用程序打开文件。
  16. os.popen(cmd, mode='r', buffering=- 1):Open a pipe to or from command cmd. The return value is an open file object connected to the pipe, which can be read or written depending on whether mode is ‘r’ (default) or ‘w’. The buffering argument have the same meaning as the corresponding argument to the built-in open() function. The returned file object reads or writes text strings rather than bytes.

8.1.2 os.path常用路径操作

  1. os.path.abspath(path):返回路径 path 的绝对路径(标准化的)。
  2. os.path.basename(path):返回路径 path 的基本名称。
  3. os.path.commonpath(paths):接受包含多个路径的序列 paths,返回 paths 的最长公共子路径。如果 paths 同时包含绝对路径和相对路径,或 paths 在不同的驱动器上,或 paths 为空,则抛出 ValueError 异常。与 commonprefix() 不同,本方法返回有效路径。。
  4. os.path.commonprefix(list):接受包含多个路径的 列表,返回所有路径的最长公共前缀(逐字符比较)。如果 列表 为空,则返回空字符串 (‘’)。备注 此函数是逐字符比较,因此可能返回无效路径。要获取有效路径,参见 commonpath()。
  5. os.path.dirname(path):返回路径 path 的目录名称。这是将 path 传入函数 split() 之后,返回的一对值中的第一个元素。
  6. os.path.exists(path);如果 path 指向一个已存在的路径或已打开的文件描述符,返回 True。对于失效的符号链接,返回 False
  7. os.path.isabs(path):如果 path 是一个绝对路径,则返回 True
  8. os.path.isfile(path):如果 path 是 现有的 常规文件,则返回True。本方法会跟踪符号链接,因此,对于同一路径,islink()isfile() 都可能为 True
  9. os.path.isdir(path):如果 path 是 现有的 目录,则返回 True。本方法会跟踪符号链接,因此,对于同一路径,islink()isdir() 都可能为 True。
  10. os.path.join(path, *paths):智能地拼接一个或多个路径部分。 返回值是 path*paths 的所有成员的拼接,其中每个非空部分后面都紧跟一个目录分隔符,最后一个部分除外,这意味着如果最后一个部分为空,则结果将以分隔符结尾。 如果某个部分为绝对路径,则之前的所有部分会被丢弃并从绝对路径部分开始继续拼接。

8.2 sys — 系统相关的参数和函数

8.3 argparse—命令行选项、参数和子命令解析器

8.4 shutil — 高阶文件操作

shutil 模块提供了一系列对文件和文件集合的高阶操作。 特别是提供了一些支持文件拷贝和删除的函数。 对于单个文件的操作,请参阅 os 模块。

8.5 logging — Python 的日志记录工具

这个模块为应用与库实现了灵活的事件日志系统的函数与类。使用标准库提供的 logging API 最主要的好处是,所有的 Python 模块都可能参与日志输出,包括你自己的日志消息和第三方模块的日志消息。

8.6 time — 时间的访问和转换

该模块提供了各种与时间相关的函数。相关功能还可以参阅 datetimecalendar 模块。

尽管所有平台皆可使用此模块,但模块内的函数并非所有平台都可用。此模块中定义的大多数函数的实现都是调用其所在平台的C语言库的同名函数。因为这些函数的语义可能因平台而异,所以使用时最好查阅对应平台的相关文档。

8.7 datetime — 基本日期和时间类型

datetime 模块提供用于处理日期和时间的类。在支持日期时间数学运算的同时,实现的关注点更着重于如何能够更有效地解析其属性用于格式化输出和数据操作。

8.8 traceback —— 打印或读取堆栈的跟踪信息

该模块提供了一个标准接口来提取、格式化和打印 Python 程序的堆栈跟踪结果。它完全模仿Python 解释器在打印堆栈跟踪结果时的行为。当您想要在程序控制下打印堆栈跟踪结果时,例如在“封装”解释器时,这是非常有用的。

这个模块使用 traceback 对象 —— 这是存储在 sys.last_traceback 中的对象类型变量,并作为 sys.exc_info() 的第三项被返回。

8.9 ctypes — Python 的外部函数库

ctypesPython 的外部函数库。它提供了与 C 兼容的数据类型,并允许调用 DLL 或共享库中的函数。可使用该模块以纯 Python 形式对这些库进行封装。

8.10 openpyxl - A Python library to read/write Excel 2010 xlsx/xlsm files

openpyxl is a Python library to read/write Excel 2010 xlsx/xlsm/xltx/xltm files.It was born from lack of existing library to read/write natively from Python the Office Open XML format.All kudos to the PHPExcel team as openpyxl was initially based on PHPExcel.

8.11 xlrd

xlrd is a library for reading data and formatting information from Excel files in the historical .xls format.

8.12 xlwt

xlrd is a library for reading data and formatting information from Excel files in the historical .xls format.

8.13 numpy

NumPyPython 中科学计算的基本包。它是一个 Python 库,提供了一个多维数组对象和各种衍生对象(比如掩码数组和矩阵等) ,还提供了一系列对数组进行快速操作的例程,包括数学、逻辑、形状操作、排序、选择、 I/O、离散傅立叶变换、基本线性代数、基本统计操作、随机模拟等等。

8.13 opencv-python

OpenCV (Open Source Computer Vision Library: http://opencv.org) is an open-source library that includes several hundreds of computer vision algorithms. Opencv-python is Pre-built CPU-only OpenCV packages for Python.

8.14 pandas—Python 核心数据分析支持库

OpenCV (Open Source Computer Vision Library: http://opencv.org) is an open-source library that includes several hundreds of computer vision algorithms. Opencv-python is Pre-built CPU-only OpenCV packages for Python.

8.15 selenium— 通过 WebDriver 实现市场上所有主流浏览器的自动化

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值