python glob.glob的时候忽略隐藏文件
时间: 2023-12-23 20:27:36 浏览: 418
在使用`glob.glob`函数时,可以通过在路径中添加通配符来匹配文件。如果想要忽略隐藏文件,可以使用`glob.glob`函数的`**`通配符来递归地匹配文件,并在匹配时排除以`.`开头的文件或文件夹。
下面是一个示例代码:
```python
import glob
file_path = 'C:/Users'
pattern = file_path + '/**/*'
files = [f for f in glob.glob(pattern, recursive=True) if not f.startswith('.')]
print(files)
```
在上述代码中,`file_path`是要搜索的文件夹路径,`pattern`是用于匹配文件的通配符模式。通过`glob.glob`函数和`recursive=True`参数,可以递归地匹配文件夹下的所有文件。然后使用列表推导式过滤掉以`.`开头的文件或文件夹,即忽略隐藏文件。
运行上述代码后,将会输出符合条件的文件路径列表,其中忽略了隐藏文件。
相关问题
python glob模块
Python的glob模块是Python标准库中的一个重要模块,主要用于查找符合特定规则的目录和文件,并将搜索结果返回到一个列表中。它提供了三个主要函数:glob()、iglob()和escape()。
- glob.glob()函数返回符合匹配条件的所有文件的路径。
- glob.iglob()函数返回一个迭代器对象,需要循环遍历获取每个元素,得到的也是符合匹配条件的所有文件的路径。
- glob.escape()函数可以忽略所有的特殊字符,例如星号、问号、中括号。
使用这个模块的主要原因是,它支持几个特殊的正则通配符,非常方便实用。
python一个文件夹只读取其中的wav文件,不读取txt文件
你可以使用Python的`os`和`glob`模块来遍历文件夹,仅限读取`.wav`文件而忽略`.txt`文件。以下是一个简单的例子:
```python
import os
import glob
# 定义要搜索的文件夹路径
folder_path = 'your_folder_path'
# 使用glob.glob()函数匹配特定类型的文件
# '*.wav' 表示查找所有以.wav结尾的文件
wav_files = glob.glob(folder_path + '/*.wav')
for file in wav_files:
# 只读取wav文件,这里假设你需要打开每个文件并做些处理
with open(file, 'rb') as f:
# 执行你的读取操作,例如读取音频数据
audio_data = f.read()
# 关闭文件后继续下一个
f.close()
```
这段代码会跳过所有的.txt文件,只对`.wav`文件执行读取操作。如果你只是想列出而不实际读取,可以去掉`with open()`部分。
注意替换`your_folder_path`为实际的文件夹路径。如果你想要进一步过滤文本文件,你可以在找到文件后添加条件判断,比如使用`os.path.splitext()`检查文件扩展名。
阅读全文