读取和附加Sage文件
下面我们演示如何将单独编写的文件读取到Sage中。 新建文件example.sage
,包含以下内容:
print("Hello World")
print(2^3)
你可以使用load
命令读取和执行example.sage
文件:
sage: load "example.sage"
Hello World
8
你也可以用attach
命令,在当前运行的会话后面附加一个Sage文件:
sage: attach "example.sage"
Hello World
8
现在如果你修改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
命令。