如何在python 2.7,窗口7中删除带有unicode名称的文件夹

时间:2013-04-25 04:36:41

标签: python python-2.7

在python中,我可以删除带有Ascii名称的文件夹。 我用: import shutil shutil.rmtree( 'FOLDER_NAME') 但是当文件夹名称包含unicode字符时,如“今年将不再”,我收到错误:系统找不到指定的路径。 在这种情况下是否有删除文件夹的解决方案。 谢谢!

1 个答案:

答案 0 :(得分:2)

使用Unicode字符串。如果在字符串中指定非ASCII字符,请确保指定源文件的编码以及实际以该编码保存源文件:

# coding: utf-8
import os
os.remove(u'美国人.txt')
os.rmdir(u'马克')

如果您通过os.listdiros.walk等命令以编程方式读取文件目录,请使用Unicode指定目录,否则您将无法获得Unicode文件名:

>>> os.listdir('.')
['???.txt', '??']

VS

>>> os.listdir(u'.')
[u'\u7f8e\u56fd\u4eba.txt', u'\u9a6c\u514b'] # Unicode escapes are 美国人and 马克.