我有一个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()
是因为我需要程序的输出。
知道我能做什么吗?