python获取文件夹下所有制定后缀文件名字
时间: 2023-07-27 15:07:18 浏览: 178
可以使用Python的os和glob模块来获取文件夹下所有指定后缀的文件名字,具体代码如下:
```python
import os
import glob
# 文件夹路径
folder_path = '/path/to/folder/'
# 指定后缀
extension = '.txt'
# 使用glob模块来获取所有指定后缀的文件路径
files = glob.glob(os.path.join(folder_path, '*' + extension))
# 遍历文件路径并获取文件名
file_names = [os.path.basename(file) for file in files]
# 输出文件名
print(file_names)
```
在上面的代码中,我们首先指定了文件夹路径和后缀名,然后使用glob模块来获取所有指定后缀的文件路径,最后使用os.path.basename函数来获取文件名并将其存储在file_names列表中。
相关问题
QFileDialog.getExistingDirectory()打开只显示制定文件后缀的文件
`QFileDialog.getExistingDirectory()` 是用于选择文件夹路径的方法,它不支持直接过滤文件后缀名。但是你可以自己对选择的文件夹路径进行过滤,只选择符合指定后缀名的文件。
以下是一个示例代码,演示如何使用 `QFileDialog.getExistingDirectory()` 方法选择文件夹路径,并对该文件夹下的文件进行后缀名过滤:
```python
from PyQt5.QtWidgets import QApplication, QFileDialog
import os
if __name__ == "__main__":
app = QApplication([])
# 获取用户选择的文件夹路径
directory = QFileDialog.getExistingDirectory(None, "Select Directory")
if directory:
# 指定要筛选的后缀名
extensions = ['.txt', '.csv']
# 遍历文件夹下的所有文件,并进行后缀名过滤
for root, dirs, files in os.walk(directory):
for file in files:
if os.path.splitext(file)[1] in extensions:
file_path = os.path.join(root, file)
print("Filtered file:", file_path)
app.exec_()
```
在这个示例代码中,我们使用 `QFileDialog.getExistingDirectory()` 方法获取用户选择的文件夹路径。然后,我们指定了要筛选的后缀名列表 `extensions`,例如 ['.txt', '.csv']。接下来,我们使用 `os.walk()` 遍历文件夹下的所有文件,并使用 `os.path.splitext()` 分离文件名和扩展名。如果扩展名存在于 `extensions` 列表中,我们将文件的完整路径打印出来。
请注意,这个示例只是对选择的文件夹路径下的文件进行了后缀名过滤,而不是对选择文件夹对话框本身进行过滤。因为 `QFileDialog.getExistingDirectory()` 方法本身不支持直接过滤文件后缀名。
阅读全文