解决办法:
def bad_filename(filename):
temp = filename.encode(sys.getfilesystemencoding(), errors='surrogateescape')
return temp.decode('utf-8')
for name in files:
try:
print(name)
except UnicodeEncodeError:
print(bad_filename(name))
整体思路就是先编码再解码