读取和附加Sage文件
下面我们演示如何将单独编写的文件读取到Sage中。 新建文件example.sage,包含以下内容:
print("Hello World")print(2^3)
你可以使用load命令读取和执行example.sage文件:
sage: load "example.sage"Hello World8
你也可以用attach命令,在当前运行的会话后面附加一个Sage文件:
sage: attach "example.sage"Hello World8
现在如果你修改example.sage并输入了一个空白行(即,按return), 那么example.sage的内容将会自动重新读入Sage。
特别的, 当文件被修改后,attach会自动重载,这在调试代码的时候很方便。而load只能读入一个文件一次。
当Sage读入example.sage时,将其转为Python,之后由Python解释器执行。对源文件的是很少的,主要是将字面上的整数转为Integer(), 字面上的实数转为RealNumber(), 将^替换为**, 以及类似R.2转为R.gen(2)的这种替换。 转换后的example.sage叫example.sage.py并保存在相同的目录下。 这个文件包含以下代码:
print("Hello World")print(Integer(2)**Integer(3))
字面整数被转换,^替换为**. (Python中,^表示”异或”,**表示”乘方”。)
预分词工作是由sage/misc/interpreter.py实现的。
你可以把多行已缩进的代码粘贴到Sage中,只要有一个新行标识代码块的结束(这在文件中是不需要的)。然而,将这样的代码输入Sage的最好方法是保存为文件,并使用attach命令。
