Python获取py文件目录及其应用
Python获取py文件目录及其应用
本文将从多个方面介绍Python获取py文件目录及其应用,包括获取py文件所在目录和父目录、获取某个路径下所有py文件、查找某个目录下特定文件名的py文件、以及将当前目录及其子目录下所有py文件的绝对路径写入文本文件。
一、获取py文件所在目录和父目录
import os # 获取当前py文件所在目录 dir_path = os.getcwd() # 获取当前py文件所在父目录 parent_path = os.path.dirname(dir_path) print('当前py文件所在目录:', dir_path) print('当前py文件所在父目录:', parent_path)
代码解析:
使用os模块中的getcwd()函数获取当前py文件所在目录,使用os.path模块中的dirname()函数获取当前py文件所在父目录。
二、获取某个路径下所有py文件
import os def get_all_py_files(path): py_files = [] for root, dirs, files in os.walk(path): for f in files: if f.endswith('.py'): py_files.append(os.path.join(root, f)) return py_files # 获取当前py文件所在目录下所有py文件 all_py_files = get_all_py_files(os.getcwd()) print('当前py文件所在目录下所有py文件:', all_py_files)
代码解析:
使用os模块中的walk()函数遍历某个路径下的所有文件和目录,使用endswith()方法判断文件名是否以'.py'结尾,如果是就将文件路径添加到py_files列表中。
三、查找某个目录下特定文件名的py文件
import os def search_py_files(path, name): py_files = [] for root, dirs, files in os.walk(path): for f in files: if f == name+'.py': py_files.append(os.path.join(root, f)) return py_files # 查找当前py文件所在目录下名为'sample'的py文件 py_files = search_py_files(os.getcwd(), 'sample') print('当前py文件所在目录下名为sample的py文件:', py_files)
代码解析:
同样使用os模块中的walk()函数遍历某个路径下的所有文件和目录,使用'=='判断文件名是否为目标文件名+'.py',如果是就将文件路径添加到py_files列表中。
四、将当前目录及其子目录下所有py文件的绝对路径写入文本文件
import os def write_py_files_to_file(path): py_files = [] for root, dirs, files in os.walk(path): for f in files: if f.endswith('.py'): py_files.append(os.path.join(root, f)) with open('py_files.txt', 'w') as f: for py_file in py_files: f.write(py_file+'\n') # 将当前py文件所在目录及其子目录下所有py文件的绝对路径写入文本文件 write_py_files_to_file(os.getcwd())
代码解析:
同样使用os模块中的walk()函数遍历某个路径下的所有文件和目录,使用endswith()方法判断文件名是否以'.py'结尾,如果是就将文件路径添加到py_files列表中。
使用with关键字打开文件,指定文件名为'py_files.txt',指定打开模式为'w'(写入模式),循环遍历py_files列表,使用write()方法将每个py文件路径加上换行符写入文件。
五、小结
本文从四个方面介绍了Python获取py文件目录的方法及应用,覆盖了获取py文件所在目录和父目录、获取某个路径下所有py文件、查找某个目录下特定文件名的py文件、以及将当前目录及其子目录下所有py文件的绝对路径写入文本文件。
评论关闭