在python中,我可以删除带有Ascii名称的文件夹。 我用: import shutil shutil.rmtree( 'FOLDER_NAME') 但是当文件夹名称包含unicode字符时,如“今年将不再”,我收到错误:系统找不到指定的路径。 在这种情况下是否有删除文件夹的解决方案。 谢谢!
答案 0 :(得分:2)
使用Unicode字符串。如果在字符串中指定非ASCII字符,请确保指定源文件的编码以及实际以该编码保存源文件:
# coding: utf-8
import os
os.remove(u'美国人.txt')
os.rmdir(u'马克')
如果您通过os.listdir
或os.walk
等命令以编程方式读取文件目录,请使用Unicode指定目录,否则您将无法获得Unicode文件名:
>>> os.listdir('.')
['???.txt', '??']
VS
>>> os.listdir(u'.')
[u'\u7f8e\u56fd\u4eba.txt', u'\u9a6c\u514b'] # Unicode escapes are 美国人and 马克.