gpt4 book ai didi

python - 如何遍历具有多个驱动器的Windows安装中的所有目录

转载 作者:太空宇宙 更新时间:2023-11-04 03:57:45 25 4
gpt4 key购买 nike

我正在编写一个应该跨平台的脚本(外行无需编辑代码即可使用)。
该脚本基本上会遍历计算机上的所有目录并处理找到的一些文件。
有问题的代码片段如下:

for dirpath, dirnames, filenames in os.walk("/"):
for file in filenames:
#process files

因此在 Linux 上这可以正常工作,因为“/”是根目录。但是,在 Windows 上,“/”转换为 C:\,这意味着在具有多个驱动器(C:\、D:\、E:\等)的计算机上,不会处理其他驱动器。

如何确保使用一个脚本在 Windows 和 Linux 中处理所有驱动器上的所有文件?

谢谢

最佳答案

也许像这样(未经测试的)示例,如果机器不是 Linux 平台,则检查驱动器:

import sys
if sys.platform == "linux" or sys.platform == "linux2":
drives = ['/']
else:
# http://nullege.com/codes/search/win32api.GetLogicalDriveStrings
import win32api
drives = win32api.GetLogicalDriveStrings()
drives = drives = drives.split('\000')[:-1]

for drive in drives:
for dirpath, dirnames, filenames in os.walk(drive):
# ...
pass

关于python - 如何遍历具有多个驱动器的Windows安装中的所有目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24104590/

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