python: e驱动器的os.walk不起作用

标签 python os.walk

简单代码:

import os 

filenamelist = []
#path = "E:\blah\blah\blah"
path = "C:\Program Files\Console2"
for files in os.walk(path):
    filenamelist.append(files)
    print files

以上作品。但是当我设置 path= "E:\blah\blah\blah"时,脚本运行但不返回任何内容。

1) C:\Users\guest>python "read files.py"

('C:\\Program Files\\Console2', [], ['console.chm', 'Console.exe', 'console.xml', 'ConsoleHook.dll', 'FreeImage.dll', 'FreeImagePlus.dll'])

2) C:\Users\guest>python "read files.py"

C:\Users\guest>

知道为什么 os.walk() 在 E:\上遇到困难吗?我无法让它读取 E: 上的任何内容。我有一个映射到 E 驱动器的外部驱动器。

最佳答案

这可能是因为 python 将 \ 视为转义符号,而您的组合实际上是 E: 磁盘路径的转义符号。

可以通过以下方式之一解决:

  1. 原始字符串文字:r"E:\blah\blah\blah"(反斜杠不被视为转义符号)。
  2. 双反斜杠:"E:\\blah\\blah\\blah"(转义符号自行转义)。
  3. 斜线“E:/blah/blah/blah”(这也适用于 Windows)。

关于python: e驱动器的os.walk不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16134995/

相关文章:

python - 通过python访问放置在多个目录中的文件

python - 在 Python 中使用 os.walk() 递归遍历目录

python - 分配和使用具有相同条件的变量而不会收到警告

python - 将内容直接发送到 scrapy pipeline

python - 如何使用列表理解从列表中返回元组和计数

python - 如何禁用充当链接django的按钮

python - 未处理的 stopIteration 的 os.walk 错误

python - 从多边形列表中减去内环

python - 创建仅包含一个目录中的 .pdf 和 .xml 文件的 zip

python - 当要求打印 dirpaths 时,os.walk() 永远不会返回