常见标准库
OS
Python的os
模块提供了一些与操作系统交互的功能,这使得程序能够执行如文件和目录的操作、获取系统信息、执行命令等。以下是一些常用的os
模块函数的详细介绍:
文件和目录操作
os.getcwd()
:- 获取当前工作目录的路径。
- 示例:
os.chdir(path)
:- 改变当前工作目录。
- 示例:
os.listdir(path='.')
:- 返回指定目录下的文件和目录列表。
- 示例:
os.mkdir(path)
:- 创建一个新的目录。
- 示例:
os.makedirs(path)
:- 递归地创建目录。
- 示例:
os.remove(path)
:- 删除文件。
- 示例:
os.rmdir(path)
:- 删除目录。
- 示例:
os.removedirs(path)
:- 递归地删除目录。
- 示例:
os.rename(src, dst)
:- 重命名文件或目录。
- 示例:
os.stat(path)
:- 获取文件或目录的状态信息。
- 示例:
os.walk()
os.walk
是一个生成器函数,它返回一个三元组 (dirpath, dirnames, filenames)
。具体来说:
dirpath
:当前遍历到的目录的路径(字符串)。dirnames
:该目录下的子目录名列表(列表中的每一项是一个字符串)。filenames
:该目录下的文件名列表(列表中的每一项是一个字符串)。
路径操作
os.path.basename(path)
:- 返回路径的基本名称。
- 示例:
os.path.dirname(path)
:- 返回路径的目录部分。
- 示例:
os.path.join(path, *paths)
:- 将多个路径组合成一个路径。
- 示例:
os.path.split(path)
:- 将路径拆分为目录和文件名。
- 示例:
dir_name, base_name = os.path.split('/path/to/file.txt')
print(dir_name) # 输出 '/path/to'
print(base_name) # 输出 'file.txt'
os.path.exists(path)
:- 检查路径是否存在。
- 示例:
os.path.isabs(path)
:- 检查路径是否为绝对路径。
- 示例:
os.path.isfile(path)
:- 检查路径是否为文件。
- 示例:
os.path.isdir(path)
:- 检查路径是否为目录。
- 示例:
os.path.getsize(path)
:- 返回文件的大小(以字节为单位)。
- 示例:
os.path.abspath(path)
:- 返回路径的绝对路径。
- 示例:
系统信息
os.name
:- 返回当前操作系统的名称。
- 示例:
os.environ
:- 一个表示系统环境变量的字典。
- 示例:
执行系统命令
os.system(command)
:- 在子终端中执行系统命令。
- 示例:
os.popen(command)
:- 执行系统命令并返回一个文件对象。
- 示例:
os
模块是Python标准库中功能非常强大的一个模块,它提供了对操作系统功能的访问,适用于需要进行文件操作、路径处理和执行系统命令的场景。
sys
sys
模块是Python标准库的一部分,提供了一些与Python解释器进行交互的函数和变量。这个模块常用于处理运行时环境配置、管理输入输出、操作Python运行时环境以及访问传递给脚本的命令行参数。
以下是sys
模块的详细介绍:
1. 命令行参数
sys.argv
: 这是一个列表,包含了运行Python脚本时传递的命令行参数。sys.argv[0]
是脚本的名称,后面的元素是传递给脚本的参数。
2. 程序退出与错误处理
sys.exit([arg])
: 该函数用于退出程序,并可以选择性地返回一个状态码。通常,0
表示程序正常退出,非零表示异常退出。你也可以传递一个字符串作为错误消息。
3. 标准输入输出
sys.stdin
: 表示标准输入(通常是键盘输入),你可以用它来从命令行或其他输入流中获取输入。
sys.stdout
: 表示标准输出(通常是控制台),可以用它来输出数据。
sys.stderr
: 表示标准错误输出流,通常用于输出错误信息。
4. 解释器相关
sys.version
: 获取Python解释器的版本信息。
sys.platform
: 获取当前运行Python的操作系统平台名称。
sys.path
: 返回模块搜索路径的列表,Python会在这些路径中查找要导入的模块。可以动态地修改这个列表来改变模块的查找路径。
5. 内存管理
sys.getsizeof(object)
: 返回对象在内存中的大小,单位是字节。
6. 运行时信息
sys.modules
: 一个字典,包含了当前导入的所有模块的名称和对应的模块对象。
sys.maxsize
: 返回Python中整数的最大值(与系统的位数相关)。
7. 异常处理
sys.exc_info()
: 返回当前处理的异常类、异常实例以及异常回溯对象。这对于在异常处理过程中获取更多上下文信息非常有用。
总结
sys
模块为Python程序提供了与解释器、操作系统交互的多种方法,使得程序员能够更加灵活地控制程序的执行环境和行为。在编写复杂的Python脚本时,熟练使用sys
模块会非常有帮助。