【问题标题】:DOS command in MATLABMATLAB中的DOS命令
【发布时间】:2020-12-29 09:58:39
【问题描述】:

我想问一下 Python 中的一个命令,它的执行方式与 MATLAB 中的 dos() 命令完全一样。例如,我在 MATLAB 中有以下代码块,我想在 Python 中做同样的事情。

**DIANA = '"C:\Program Files\Diana 10.3\\bin\\DianaIE.exe"'; 
MODEL = 'Input.dcp'; 
INPUTDIR = 'C:\Users\pc\Desktop\Thesis\PSO\'; 
OUTPUTDIR = 'C:\Users\pc\Desktop\Thesis\PSO\'; 
OUTPUT = 'FILE_OUTPUT.out'; 
WORKDIRINPUT = sprintf('%s%s',INPUTDIR,MODEL);
WORKDIROUTPUT = sprintf('%s%s',OUTPUTDIR,OUTPUT);
%
NAMES = sprintf('%s  %s  %s',DIANA,WORKDIRINPUT,WORKDIROUTPUT);
disp('Start DIANA');
dos(NAMES);
disp('End DIANA');**

【问题讨论】:

    标签: python matlab execution


    【解决方案1】:

    要在代码中执行一段代码并在 python 中获取输出,您可以使用名为 exec() 的函数并将表达式或要执行的代码作为字符串传递。

    这接受代码作为字符串。例子..

    code = 'x=100\nprint(x)'
    exec(code)
    

    输出:

    100
    

    如果你想在 python 中使用命令提示符或 power shell 命令,你应该在 python 中使用一个名为 os 的库

    import os
    os.system('cd document')
    

    您可以使用 os.path 模块来操作路径,并通过此文档了解更多信息OS-Documentation

    【讨论】:

    • 在 python 中,大多数情况下你会在命令提示符、终端或 PowerShell 中运行代码,所以我认为可以这样做。
    【解决方案2】:
    import subprocess
    

    subprocess.call(['C:\Program Files\Diana 10.3\bin\DianaIE.exe', 'C:\Users\pc\Desktop\Thesis\PSO\Input.py'])

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-07
      • 2018-09-05
      • 2012-11-12
      • 1970-01-01
      相关资源
      最近更新 更多