为什么我的Sage笔记本命令不变色?如何编译在Sage笔记本上写的程序?

1 投票
1 回答
543 浏览
提问于 2025-04-18 03:07

我正在使用Sage笔记本版本5.11。当我写命令时,它的颜色没有变化。例如,我尝试定义一个函数,写了def f(n):然后按下'enter'键,虽然它缩进了并跳到了下一行,但我本来期待看到def的颜色变化,但没有发生。输入'return'命令时也是一样,为什么没有变化呢?

为了看到颜色变化,我应该在哪里写程序呢?

其次,我该如何编译在Sage笔记本上写的程序?

如果有相关的教程链接(除了Sage网页上的),我会非常感激。我在经历了六年的间隔后重新开始编程,对Sage、笔记本的概念等完全陌生,所以我可能需要一些基础知识来快速学习。

1 个回答

2

我喜欢PREP教程,不过这可能是我个人的偏好。

至于你其他的问题,我不太确定你期待什么。Sage笔记本没有像一些集成开发环境(IDE)那样实现代码上色,不过我觉得这并不是个问题。Sage Math Cloud可能会有这个功能,但我不太确定。如果没有颜色变化也没关系,这很正常。

我不太明白你说的“编译程序”是什么意思;计算都是直接在那儿完成的,不需要额外的步骤。举个例子,如果你在一个单元格里输入

def f(n):
    return factorial(n)/n^n

然后执行它,接着在下一个单元格里输入

f(4)

你应该会得到3/32的结果。你可以在笔记本中使用Cython代码,只需做(从开发者指南中的一个例子)

%cython
def is2pow(n):
    while n != 0 and n%2 == 0:
        n = n >> 1
    return n == 1

这会先编译成C代码,然后再为你编译C代码,你就可以使用它了。不过在这个阶段,你可能并不需要这样做。

不过,你以这种方式创建的函数只在你的工作表中可用。如果你想在其他地方使用这些函数,创建一个包含所有需要的函数和其他计算的文件是个好主意——你可以使用Sage命令行来做到这一点,或者将这些文件附加到笔记本工作表中。

祝你好运!

撰写回答