1

我想为 Abaqus 创建一个 Python 脚本,其中将使用 Scipy 库。不幸的是,Abaqus 没有那个库。它可以安装,但我想以不同的方式进行。

我的想法是编写一个接受参数的函数,将其传递给在 Abaqus 外部打开的新 Python 解释器,然后将输出返回到我的文件。

我很确定它可能会完成,但我仍在学习 Python。请给我任何可以用来解决问题的提示。

4

1 回答 1

1

为了实现你想要的,你需要启动一个后台进程,它将执行一个 Python 脚本。这可以通过内置subprocess模块在 Python 中完成。

在最简单的情况下,您将编写如下内容:

import subprocess
process = subprocess.Popen(['python', 'your_script_name.py'])
process.wait() # If you want to stop caller until callee terminates

也可以检索子进程返回的结果,但您可以在其他线程中阅读更多信息:

请注意,在某些情况下,有必要os.environ通过删除 Abaqus 特定的环境变量来修改包含环境变量 ( ) 的字典的内容。否则,启动子流程会出现一些问题。

如果您确实想将修改后的环境传递给新进程,请Popen使用参数env.

于 2016-01-08T07:07:28.047 回答