在路径为path文件中含有123_diff.csv 和123_o_diff.csv等多个以_diff.csv为结尾的csv文件,循环根目录找到有且只含有_diff.csv的csv文件的路径
时间: 2023-12-10 07:37:37 浏览: 70
可以使用以下代码实现:
```python
import os
def find_csv_path():
for root, dirs, in os.walk('.'):
for file in files:
if file.endswith('_diff.csv'):
full_path os.path.join(root, file)
# 判断是否只含有_diff.csv的文件
if len([f for f in files if f.endswith('_diff.csv')]) == 1:
return full_path
return None
csv_path = find_csv_path()
if csv_path:
print(f"找到符合条件的CSV文件路径:{csv_path}")
else:
print("未找到符合条件的CSV文件路径!")
```
这段代码使用 `os.walk` 函数遍历目录树,找到所有文件和目录。在遍历过程中,对于每个文件,判断是否以 `_diff.csv` 结尾,如果是,就获取文件的完整路径 `full_path`。接下来,使用列表推导式找到当前目录下所有以 `_diff.csv` 结尾的文件,并计算文件数目。如果文件数目为 1,说明当前目录下只有一个以 `_diff.csv` 结尾的文件,满足条件,直接返回 `full_path`。如果遍历结束后未找到符合条件的文件,返回 None。
你需要将 `.` 替换为要查找的根目录路径,然后执行该函数即可。如果找到符合条件的 CSV 文件,会返回路径,否则返回 None。
阅读全文