根据txt文件筛选出同名字的img文件
时间: 2024-09-20 17:14:39 浏览: 35
当你想从一个.txt文件中筛选出与其中特定名字相同的.img文件时,你需要通过以下几个步骤操作:
1. **读取.txt文件**:首先打开并读取.txt文件内容,这通常涉及到文本处理,可以使用Python的`open()`函数配合`readlines()`方法。
```python
with open('file.txt', 'r') as file:
names_list = file.readlines()
```
这里假设`.txt`文件每行包含一个图片名。
2. **提取图片名**:对读取到的每一行进行处理,提取出图片名。如果你的图片名是在每行的特定位置,你可以直接分割字符串;如果需要正则表达式的话,则需要额外解析。
```python
image_names = [name.strip() for name in names_list if '.' in name]
```
3. **遍历目录查找图片**:有了图片名列表,遍历指定的图片目录,检查是否存在与每个名字匹配的.jpg或.png等格式的图片。
```python
image_dir = '/path/to/images'
images = {name: [] for name in image_names}
for root, dirs, files in os.walk(image_dir):
for file in files:
if file.endswith(('.jpg', '.png')) and name_in_file := file.split('.')[0] in image_names:
images[name_in_file].append(os.path.join(root, file))
```
这里使用了`os.walk()`函数来递归搜索目录,并通过`endswith()`函数判断是否为图片文件。
4. **结果整理**:最后,`images`字典将存储每个图片名及其对应的路径列表。
5. **处理结果**:如果你想查看筛选出的图片,可以直接打印出来,或者根据需求进一步操作,如删除、复制等。
```python
for name, paths in images.items():
print(f"Name: {name}, Paths: {paths}")
```
阅读全文