Python获取同级文件目录
在Python中,我们经常需要获取当前工作目录下的文件列表或特定类型的文件列表。为了实现这一目的,我们可以使用os
模块和glob
模块来获取同级文件目录。本文将介绍如何使用这两个模块来实现获取同级文件目录的功能,并提供相应的代码示例。
1. 使用os模块获取同级文件目录
os
模块是Python的标准库之一,提供了与操作系统交互的功能。通过使用os
模块,我们可以轻松地获取当前工作目录下的文件列表。
1.1 获取当前工作目录
在Python中,我们可以使用os.getcwd()
函数来获取当前工作目录。下面是获取当前工作目录的代码示例:
import os
# 获取当前工作目录
current_dir = os.getcwd()
print("当前工作目录:", current_dir)
运行以上代码,输出结果为:
当前工作目录: /home/user/Documents
1.2 获取同级文件目录
在获取当前工作目录之后,我们可以使用os.listdir()
函数来获取同级文件目录。os.listdir()
函数返回一个包含当前目录下所有文件和文件夹名称的列表。
下面是获取同级文件目录的代码示例:
import os
# 获取当前工作目录
current_dir = os.getcwd()
# 获取同级文件目录
file_list = os.listdir(current_dir)
print("同级文件目录:", file_list)
运行以上代码,输出结果为:
同级文件目录: ['file1.txt', 'file2.py', 'folder1', 'folder2']
1.3 过滤特定类型的文件目录
如果我们只想获取特定类型的文件目录,可以结合使用os.path.isfile()
函数和文件类型的判断条件,来过滤文件目录。
下面是过滤特定类型的文件目录的代码示例,假设我们只想获取后缀名为.txt
的文件目录:
import os
# 获取当前工作目录
current_dir = os.getcwd()
# 获取同级文件目录
file_list = os.listdir(current_dir)
# 过滤特定类型的文件目录
txt_files = [file for file in file_list if os.path.isfile(os.path.join(current_dir, file)) and file.endswith(".txt")]
print("后缀名为.txt的文件目录:", txt_files)
运行以上代码,如果当前工作目录下存在后缀名为.txt
的文件,输出结果将包含这些文件的目录;否则输出结果为空列表。
2. 使用glob模块获取同级文件目录
glob
模块是Python的标准库之一,提供了一种简单的文件名模式匹配方法。通过使用glob
模块,我们可以更方便地获取同级文件目录。
2.1 获取同级文件目录
在获取同级文件目录之前,我们需要先导入glob
模块。然后,可以使用glob.glob()
函数来获取同级文件目录。glob.glob()
函数返回一个包含匹配指定模式的文件目录的列表。
下面是获取同级文件目录的代码示例,假设我们只想获取后缀名为.py
的文件目录:
import glob
# 获取同级文件目录
file_list = glob.glob("*.py")
print("后缀名为.py的文件目录:", file_list)
运行以上代码,如果当前工作目录下存在后缀名为.py
的文件,输出结果将包含这些文件的目录;否则输出结果为空列表。
2.2 过滤特定类型的文件目录
我们还可以使用glob.glob()
函数的通配符功能,来过滤特定类型的文件目录。通配符*
表示匹配任意字符,?
表示匹配单个字符。
下面是过滤特定类型的文件目录的代码示例,假设我们只想获取后缀名为.txt
的文件目录:
import glob
# 获取同级文件目录
file_list = glob.glob("*.txt")
print("后缀名为.txt的文件目录:", file_list)
运行以上代码,如果当前