#coding=utf-8
__author__ = 'Administrator'
import os
def listDirectory(directory, fileExtList):
"get list of file info objects for files of particular extensions"
fileList = [os.path.normcase(f) for f in os.listdir(directory)]
fileList = [os.path.join(directory, f) for f in fileList if os.path.splitext(f)[1] != '' and os.path.splitext(f)[1] in fileExtList]
return fileList
print listDirectory("g:\\", '.rar')
,输出
g:\\11800 \xb9\xe2\xb7\xfc\xbc\xbc\xca\xf5\xbb\xf9\xb4\xa1\xd3\xeb\xbc\xbc\xc4\xdc\xa3\xa8\xcb\xf9\xd3\xd0\xd2\xb3\xa3\xa9.rar'
不是中国人
答案 0 :(得分:1)
(你显然省略了部分实际输出,因为打印list
看起来不像那样)
listDirectory
返回一个列表;当您print
非字符串值时,它会首先将其转换为表示(repr()
函数为该值返回的值)。 Python中字符串的表示将所有非ASCII值显示为反斜杠转义。如果你想看实际的可打印字符,你可能想要调用print '\n'.join(listDirectory("g:\\", '.rar'))
的内容; listDirectory
做返回的字符串包含正确的字符,只是您使用的print
语句将它们反向输出。