Python:UTF-8德国特殊字符

时间:2014-02-23 17:06:38

标签: python utf

我在python脚本中搜索文件并存储filepathes。 问题是,在某些情况下,有一些特殊的字符,如öäü 内部(UTF-8表十六进制U + 00C4 U + 00D6 U + 00DC等) 当我用“打印”打印路径时,它显示正确。当我用这个 用于将其发送到os.system()的字符串将特殊字符转义出来 得到UTF错误。

ERRORMSG:

cp -nv /home/rainer/Arbeitsfläche/Videofiles/A047C001_130226_R1WV.mov /media/rainer/LinuxData
Traceback (most recent call last):
  File "Clipfinder.py", line 254, in <module>
    copyProcess(sourcedir,destdir,cliplist)
  File "Clipfinder.py", line 205, in copyProcess
    os.system(copycmd)
UnicodeEncodeError: 'ascii' codec can't encode character u'\xe4' in position 29: ordinal not in range(128)

求助! 赖

copycmd = "cp -nv " + pathtoFile_src + " " + destdir
print copycmd
os.system(copycmd)

1 个答案:

答案 0 :(得分:2)

使用encode将unicode转换为字节字符串:

os.system(copycmd.encode('utf-8'))