我正在Python中遍历文件树,对于每个文件,我需要检查该文件树是否包含与原始文件相同的文件,但“ca”被替换为“wpa”。例如,对于文件“ca123.txt”,我必须检查是否存在名为“wpa123.txt”的文件。问题在于,我通过以下代码获得的结果仅在其当前所在的级别上进行搜索,而不是在整个树中搜索。如何从当前位置搜索整个文件树?import osn=0path=input()for root, dirs, files in os.walk(path): for file in files: if file.replace('ca','wpa') in files: n+=1print(n)
1 回答

泛舟湖上清波郎朗
TA贡献1818条经验 获得超3个赞
使用 pathlib 和 glob 而不是 os.walk()。
import glob
from pathlib import Path
n=0
path=Path(input())
files = [f.name for f in p.glob("**/*")]
for file in files:
if 'ca' in file:
if file.replace('ca','wpa') in files:
n+=1
print(n)
添加回答
举报
0/150
提交
取消