一、os库的文件路径相关方法
Python中,可以使用os库来进行文件路径的相关操作。
1. 获取当前工作路径
import os print(os.getcwd())
2. 判断路径是否存在
import os print(os.path.exist('/path/to/myfile'))
3. 判断路径是否为文件夹
import os print(os.path.isdir('/path/to/myfolder'))
4. 判断路径是否为文件
import os print(os.path.isfile('/path/to/myfile'))
5. 获取路径的文件名
import os filepath = '/path/to/myfile.txt' print(os.path.basename(filepath))
6. 获取路径的目录名
import os filepath = '/path/to/myfile.txt' print(os.path.dirname(filepath))
二、glob库的文件匹配方法
glob库提供了一种类似于正则表达式的方式来匹配文件路径。
1. 匹配当前目录下所有.txt文件
import glob files = glob.glob('*.txt') print(files)
2. 匹配指定目录下所有图片文件(jpg/png/gif等)
import glob files = glob.glob('/path/to/myfolder/*.{jpg,png,gif}') print(files)
3. 匹配指定目录下所有子目录的所有.py文件
import glob files = glob.glob('/path/to/myfolder/**/*.py', recursive=True) print(files)
三、os.path库的路径拼接方法
os.path库提供了一个join方法,用于将多个文件路径拼接成一个完整的路径。
1. 拼接当前目录下的example.txt文件路径
import os filename = 'example.txt' filepath = os.path.join(os.getcwd(), filename) print(filepath)
2. 拼接指定目录下的example.txt文件路径
import os filename = 'example.txt' folderpath = '/path/to/myfolder' filepath = os.path.join(folderpath, filename) print(filepath)
3. 拼接多层文件夹路径和文件名
import os filename = 'example.txt' folderpath1 = '/path/to/myfolder' folderpath2 = 'subfolder' filepath = os.path.join(folderpath1, folderpath2, filename) print(filepath)
四、os.walk库的遍历目录方法
os.walk是一个能够遍历目录的方法,它会返回当前目录路径、所有子目录路径、所有文件名。
1. 遍历当前目录下的所有文件和子目录
import os for root, dirs, files in os.walk(os.getcwd()): print('当前目录:', root) print('子目录:', dirs) print('文件:', files)
2. 遍历指定目录下的所有.py文件
import os for root, dirs, files in os.walk('/path/to/myfolder'): for filename in files: if filename.endswith('.py'): print(os.path.join(root, filename))
3. 遍历指定目录及其子目录下的所有txt文件
import os for root, dirs, files in os.walk('/path/to/myfolder'): for filename in files: if filename.endswith('.txt'): print(os.path.join(root, filename))
五、shutil库的文件操作方法
shutil库主要用于文件的复制、移动、重命名等操作。
1. 复制文件
import shutil src_path = '/path/to/myfile.txt' dst_path = '/path/to/newfile.txt' shutil.copyfile(src_path, dst_path)
2. 移动文件
import shutil src_path = '/path/to/myfile.txt' dst_path = '/path/to/newfile.txt' shutil.move(src_path, dst_path)
3. 重命名文件
import os src_path = '/path/to/myfile.txt' dst_path = '/path/to/renamedfile.txt' os.rename(src_path, dst_path)
4. 删除文件
import os filepath = '/path/to/myfile.txt' os.remove(filepath)
六、结语
本文介绍了Python操作系统文件路径列表的方法,包括os库、glob库、os.path库、os.walk库以及shutil库的使用方法。这些方法可以方便地进行文件路径的获取、匹配、拼接、遍历以及文件操作等操作。