我有一个文件夹路径,它有一些西里尔字母,可以停止另一个脚本的进程。我需要获得没有西里尔字母的文件夹路径,但python不会返回它。
该文件夹为C:\Users\PereverzevPV\Documents\Инв
。
我有:
import os
folder = os.getcwd()
print folder
无论我设置什么编码,输出都是空的。我需要得到
'C:\\Users\\PereverzevPV\\Documents\\\xd0\x98\xd0\xbd\xd0\xb2'
答案 0 :(得分:1)
如果以unicode传递文件路径,则返回也将是unicode:
>>> for dirpath, dirnames, filenames in os.walk(u"D:\\SO"):
print dirnames
[u'\u0142', u'\u0418\u043d\u0432']
也许您可以使用它,然后根据需要重新组合路径。
答案 1 :(得分:1)
试试这个:
# coding: UTF-8
import os
os.getcwd().encode('utf-8').decode('utf-8')
我们需要编码CWD然后解码他
答案 2 :(得分:0)
这可能会有所帮助。您的问题是,您没有逃脱\
:\U
,\P
,\D
或\И
无效的utf-8字符。
# coding: UTF-8
txt = r"C:\Users\PereverzevPV\Documents\Инв"
txt = "C:\\Users\\PereverzevPV\\Documents\\Инв"
esc_txt = txt.encode('utf-8')
print(esc_txt)