在交互模式下运行脚本之前,如何将脚本传递给 Sage?

Phr*_*hro 5 python interactive sage

在我的 Python 工作流程中,我通常使用该-i标志来打开 Python 解释器,该解释器首先执行我正在处理的脚本,然后允许我与其交互。例如,在test.py

#!/usr/bin/env python
print("Hello World")
x=2
Run Code Online (Sandbox Code Playgroud)

当我python -i test.py从命令行运行时,我收到以下输出:

Hello World!
>>> 
Run Code Online (Sandbox Code Playgroud)

交互模式已启用,但脚本中所做的所有定义都可供我使用。键入x将产生2.

Sagemath 是否有类似的流程?我已经尝试过该-c标志,但sage -c "attach('test.sage')"加载我正在处理的模块后该命令无法进入交互模式。

理想情况下,会有一种比使用expect概述的解决方案更简单的解决方案,但如果这确实是最佳解决方案,那么如何使用expect来使 Sagemath 在加载特定文件后启动交互式会话?

kcr*_*man 2

init.sage您可以为每个交互式 Sage 会话调用一个启动文件。请参阅此常见问题解答此文档。这就是您要找的吗?你是对的,sage -c只计算。