作者:mobiledu2502880747 | 来源:互联网 | 2024-12-17 21:12
本文介绍了如何利用Python编程语言从指定目录中提取文件名,并根据文件扩展名进行筛选,将符合条件的文件名保存至文本文件中。文章适合Python初学者,旨在通过实际案例加深对文件操作和字符串处理的理解。
作为一名Python初学者,我尝试通过编写实用的小程序来提高自己的编程技能。今天分享的程序功能是从指定文件夹中提取文件名,但排除特定类型的文件(如.rmvb),并将结果保存在一个文本文件中。
```python
import os
directory = 'd:\test\'
output_file = 'names.txt'
# 获取指定目录下的所有文件名
file_list = os.listdir(directory)
# 打开用于保存文件名的输出文件
with open(output_file, 'w') as file:
for item in file_list:
# 检查文件扩展名
if item.endswith('.txt') or item.endswith('.jpg') or item.endswith('.bmp'):
# 去除文件扩展名
base_name = os.path.splitext(item)[0]
# 将处理后的文件名写入输出文件
file.write(base_name + '\n')
```
### 关键点解析
- **os模块**:该程序中使用了`os`模块的`listdir`函数来获取指定目录下的所有文件和文件夹名称。`os.path.splitext`函数用于分离文件名和扩展名。
- **文件操作**:通过`open()`函数以写入模式('w')打开目标文件。使用`with`语句确保文件在操作完成后自动关闭。
- **字符串处理**:利用`str.endswith()`方法检查文件扩展名是否符合要求,使用`str.splitext()`方法去除文件扩展名。
此程序简单地演示了如何使用Python进行基本的文件系统操作和字符串处理。对于初学者来说,这是一个很好的实践项目,有助于理解Python在文件管理和数据处理方面的强大能力。
值得注意的是,当前版本的程序仅处理指定目录下的文件,未递归处理子目录。未来可以考虑增加递归功能,以便更全面地处理复杂的文件结构。