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

时间:2013-04-21 18:55:34

标签: 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驱动器的外部驱动器。

1 个答案:

答案 0 :(得分:4)

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

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

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