当我从python运行可执行文件并传递参数时,我什么都得不到

2024-09-30 00:42:12 发布

您现在位置:Python中文网/ 问答频道 /正文

下面是指向我要使用的程序的链接:http://www.cs.jhu.edu/~misha/Code/ShapeSPH/ShapeDescriptor/,我想用下面的命令通过python运行

import subprocess
args = ['C:\\Path\\ShapeDescriptor.exe', "--in", "x.ply", "--out", "x.txt" ]
subprocess.call(args, shell=True) 

但当我运行它时,我得到的结果是:

^{pr2}$

我能跑ShapeDescriptor.exe从命令提示符中显示为:

ShapeDescriptor.exe --in x.ply -out x.txt

并获取所需的x.txt文件,其中包含数字,例如:

0.003294 0.003386 0.003426 0.001029

我怎样才能解决这个问题?在


Tags: in程序txthttp链接wwwargsout
2条回答

尝试使用subprocess.call(args,*,stdin=None,stdout=None,stderr=None,shell=False)使用或subprocess.check_调用(args,*,stdin=None,stdout=None,stderr=None,shell=False)。在

区别在于,如果进程返回错误代码,check_调用将获得CalledProcessError。在

另一种策略是使用chdir函数更改当前目录berofe执行exe文件,如下所示:

导入操作系统

os.chdir公司('c:\documents and settings\programs\)

如果拆分不能起作用,那么您可能还需要使用cwd参数提供一个工作目录。可能x.txt是在一个意外的位置创建的。在

相关问题 更多 >

    热门问题