用unicode路径调用Popen

时间:2016-05-24 14:26:47

标签: python unicode subprocess python-2.x

我有一个unicode字符串。当我打印它时,将其复制并粘贴到CMD中并按Enter键 - 它一切正常。 但是当我使用该命令字符串调用函数subprocess.Popen()时它不起作用,Python说路径中没有这样的文件并以乱码形式打印路径(原始字符串中的unicode部分被替换为奇怪的人物)。

假设我有一个名为type<unicode>的字符串(实际上是s)(顺便说一句,我的字符串包含一个从外部文件夹运行python脚本的命令,所以它看起来像这样 - { {1}}),我可以这样做:

"python 'C:/path/to/file/file.py' arg1 arg2'

我之所以不使用print s #this works, even just copying and pasting it manually into the command line works fantastically subprocess.Popen(s, stdout=subprocess.PIPE) #prints 'python: can't open file [gibberish path]: Errno 2 no such file or directory' 之外的任何其他功能,说Popen()system()是因为我需要程序的输出。

知道我能做什么吗?

0 个答案:

没有答案