14 lines
560 B
Python
14 lines
560 B
Python
|
|
|||
|
|
|||
|
if __name__ == "__main__":
|
|||
|
# 有时候,可能会出现一些标准情况下打印会出现问题的文件名,他们不遵循系统的默认编码方式
|
|||
|
# 这时候如果print这些文件名,那么py会因为无法解码而将字符映射到一个代理编码表,显然print无法处理这些代理为空的新建编码
|
|||
|
# 解决的方案是建一个转换函数
|
|||
|
def bad_filename(filename):
|
|||
|
return repr(filename)[1: -1]
|
|||
|
|
|||
|
name = ''
|
|||
|
try:
|
|||
|
print(name)
|
|||
|
except UnicodeEncodeError:
|
|||
|
print(bad_filename(name))
|