gpt4 book ai didi

python - 检查给定驱动器上是否存在多个特定文件

转载 作者:太空宇宙 更新时间:2023-11-04 10:38:07 24 4
gpt4 key购买 nike

我正在尝试编写一个 Python 脚本来扫描驱动器,以检查给定列表中是否有任何文件存储在驱动器上的某个位置。并且,如果找到它们 - 检索它们的位置。

我的编程技能很基础,说得好听一点。

我已经在这个网站上的人的帮助下编写了一个脚本,它能够找到一个文件,但我正在努力调整它以找到多个文件。

import os 

name = ('NEWS.txt')
path = "C:\\"
result = []
for root, dirs, files in os.walk(path):
if name in files:
result.append(os.path.join(root, name) + "\n")

f = open ('testrestult.txt', 'w')
f.writelines(result)

如有任何建议,我们将不胜感激!

非常感谢。

最佳答案

import os 

names = set(['NEWS.txt', 'HISTORY.txt']) # Make this a set of filenames
path = "C:\\"
result = []
for root, dirs, files in os.walk(path):
found = names.intersection(files) # If any of the files are named any of the names, add it to the result.
for name in found:
result.append(os.path.join(root, name) + "\n")

f = open ('testrestult.txt', 'w')
f.writelines(result)

切线:

我也会考虑连续写入文件,而不是将所有信息存储在内存中并进行一次写入:

with open('testresult.txt', 'w') as f:
for root, dirs, files in os.walk(path):
found = names.intersection(files)
for name in found:
f.write(os.path.join(root, name) + '\n')

为什么?因为编写操作系统的人比我更了解缓冲。

关于python - 检查给定驱动器上是否存在多个特定文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22387692/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com