树莓派上的os.walk失败

时间:2016-01-08 19:08:43

标签: python linux

我的代码在行中失败:for dirName ... os.walk()。 我只想检索源文件夹中的文件列表。我之前使用过这个命令(在Win上运行正常)但是我试图在我的树莓派(Linux)上运行相同的代码,现在它不起作用......?

import os
import os.path
src = '/home/data/'
ext = '.hpl'
fns=[]
print src
print ext
print 'Starting'
for dirName, subdirList, fileList in os.walk(src, topdown=True):
    print('Found directory: %s' % dirName)
    for fname in fileList:
        print('\t%s' % fname)
        if fname.lower().endswith(ext):
            fn = os.path.join(dirName,fname)
            fns.append(fn)
print 'Ending the code'
return fns

当我运行它时,输出是: 打印源(/ home / data /) 打印ext(.hpl) 打印'开始' 打印'结束代码'

无论我尝试什么,它都会跳过整个“for dirName ... os.walk ......”段。不确定我的陈述有什么问题?

旁注:实际上它将src打印为/ home / data / {音符},其中音符= /旁边的小音符节拍符号。我以前从未见过这个......

1 个答案:

答案 0 :(得分:1)

这是一个不可打印的符号(不确定它是如何到达的?)在src结束时导致它崩溃。无论如何,一旦我重新写出src = .../,就修好了它。我不知道这个不可打印的符号来自哪里。