将文件夹中所有的文件名称提取出,去除后缀,后放入元祖。如果元祖中有.DS_Store文件则删除
时间: 2024-10-10 20:11:33 浏览: 15
将文件夹中的所有文件名提取并去除非想要的后缀,例如".DS_Store",可以按照以下步骤在Python中操作:
1. 首先,你需要导入`os`模块来处理文件和目录操作,以及`fnmatch`模块来匹配文件名模式。
```python
import os
import fnmatch
```
2. 使用`os.walk()`遍历指定文件夹及其内容,获取每个文件的完整路径和基础文件名(不含后缀)。
```python
def extract_names(directory):
file_list = []
for root, dirs, files in os.walk(directory):
for file in files:
if not fnmatch.fnmatch(file, '*.DS_Store'): # 过滤掉.DS_Store文件
base_name = os.path.splitext(file)[0] # 获取文件名(去除后缀)
file_list.append(base_name)
return file_list
```
3. 函数`extract_names(directory)`接受一个文件夹路径作为输入,并返回一个包含所有非.DS_Store文件名的元组列表。
如果你想把它们放在一个元组里,你可以稍微调整一下这个函数:
```python
def tuple_without_DS_Store(directory):
names = extract_names(directory)
return tuple(names) # 转换为元组
```
现在你可以调用`tuple_without_DS_Store(your_directory)`,其中`your_directory`是你想要操作的实际文件夹路径。
阅读全文