我正在用Python遍历文件树,对于每个文件,我需要检查该文件树是否包含与原始文件相同的文件,但是'ca'被替换为'wpa'。例如文件“ ca123.txt”,我将必须检查是否存在名为“ wpa123.txt”的文件。
问题是我在以下代码中得到的结果只是在当前级别上搜索,而不是在整个树上搜索。如何从当前位置搜索整个文件树?
import os
n=0
path=input()
for root, dirs, files in os.walk(path):
for file in files:
if file.replace('ca','wpa') in files:
n+=1
print(n)
问题来源:stackoverflow
使用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)
回答来源:stackoverflow
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。