所以我要做的就是修复一些mp3文件的id3tags。这一切都有效,除了带有任何重音的文件,因为os.walk似乎剥离了它们。
例如,我有文件01.Co Słychać.mp3
,在此代码中为:
for root, dirs, files in os.walk(folder):
print files
显示为['01.Co Slychac.mp3']
,之后会导致“没有此类文件或目录”错误。
如何解决这个问题?
答案 0 :(得分:7)
您是否将folder
定义为Unicode字符串?这会影响os.walk()
如何与其子目录匹配,或者更好地说明它返回的字符串类型。
>>> for a,b,c in os.walk("."):
... print b
... break
...
['DLLs', 'Doc', 'include', 'Lib', 'libs', 'tcl', 'Tools']
>>> for a,b,c in os.walk(u"."):
... print b
... break
...
[u'DLLs', u'Doc', u'include', u'Lib', u'libs', u'tcl', u'Tools']