总结归纳python os库常用方法
os
模块是 Python 标准库中的一个重要模块,提供了跨平台操作系统功能的便利封装,可以用来进行文件和目录操作、进程管理、操作系统信息获取等。
获取文件和路径信息
获取文件和目录列表
os.listdir(path='.')
: 返回指定目录下所有文件和目录的名称列表,如果没有指定path
,则返回当前工作目录下的文件和目录列表。
示例如下:
import os
# 获取当前工作目录下的文件和目录列表
print(os.listdir())
# 获取指定目录下的文件和目录列表
print(os.listdir('/usr/local'))
判断是否为文件或目录
os.path.isdir(path)
: 判断指定路径是否为目录。os.path.isfile(path)
: 判断指定路径是否为文件。os.path.exists(path)
: 判断指定路径是否存在。
示例如下:
import os
# 判断当前目录是否为目录
if os.path.isdir('.'):
print('当前目录是一个目录')
else:
print('当前目录不是一个目录')
# 判断 test.py 文件是否为文件
if os.path.isfile('test.py'):
print('test.py 是一个文件')
else:
print('test.py 不是一个文件')
# 判断 /usr/local 是否存在
if os.path.exists('/usr/local'):
print('/usr/local 存在')
else:
print('/usr/local 不存在')
获取路径信息
os.path.split(path)
: 将指定路径切分成目录部分和文件名部分,返回一个元组。os.path.splitext(path)
: 将指定路径切分成目录部分和扩展名部分,返回一个元组。os.path.basename(path)
: 返回指定路径的文件名部分。os.path.dirname(path)
: 返回指定路径的目录部分。
示例如下:
import os
path = '/usr/local/bin/python'
dir_name, base_name = os.path.split(path)
print(f'目录部分: {dir_name}')
print(f'文件名部分: {base_name}')
root, ext = os.path.splitext(path)
print(f'根部分: {root}')
print(f'扩展名部分: {ext}')
print(f'文件名: {os.path.basename(path)}')
print(f'目录名: {os.path.dirname(path)}')
文件和目录操作
创建目录
os.mkdir(path, mode=0o777, *, dir_fd=None)
: 创建指定路径的目录,如果路径不存在则创建,如果路径已经存在则抛出异常。
import os
os.mkdir('mydir')
删除目录
os.rmdir(path, *, dir_fd=None)
: 删除指定路径的目录,如果目录非空则抛出异常。
import os
os.rmdir('mydir')
创建文件
open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)
: 可以用来创建文件,也可以用来打开已经创建的文件。
import os
with open('test.txt', 'w') as f:
f.write('hello world')
删除文件
os.remove(path, *, dir_fd=None)
: 删除指定路径的文件。
import os
os.remove('test.txt')
其他操作
获取环境变量
os.environ
: 返回一个字典,包含当前进程所使用的所有环境变量。
import os
print(os.environ)
运行外部程序
os.system(command)
: 在子 shell 中运行指定的命令。该函数会阻塞当前进程,直到子进程返回。
import os
os.system('echo "hello world"')
结语
os
模块提供了许多方便的操作系统接口和函数,掌握这些方法可以更方便地操作文件和目录,并简化编程工作。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:总结归纳python os库常用方法 - Python技术站