擅长:python、mysql、java
<p>为了补充@kcrisman的答案和“<code>int(0), int(1)</code>”技巧</p>
<p>如果想要坚持Sage内核,还有两个选择</p>
<ul>
<li>(1) 用<code>preparser(False)</code>禁用preparser</li>
<li>(2) 在整数后面加上<code>r</code>(表示“raw”),例如<code>datetime.timedelta(0r, 1r)</code></李>
</ul>
<p>另请参见围绕Sage准备浮点和整数的类似问题和答案:</p>
<ul>
<li>(a) <a href="https://stackoverflow.com/q/40578746">Stack Overflow question 40578746: Sage and NumPy</a></li>
<li>(b) <a href="https://stackoverflow.com/q/28426920">Stack Overflow question 28426920: Unsized object with numpy.random.permutation</a></li>
<li>(c) <a href="https://stackoverflow.com/q/16289354">Stack Overflow question 16289354: Why is range(0, log(len(list), 2)) slow?</a></li>
</ul>
<p>最后,请注意,可以使用以下任一方法从外部文件将代码加载到Sage中:</p>
<ul>
<li><code>load('/path/to/filename.py')</code></li>
<li><code>load('/path/to/filename.sage')</code></li>
</ul>
<p>其中<code>.sage</code>文件将获得“Sage preparsed”,而<code>.py</code>文件将不会</p>
<p>这提供了第三个绕过preparser的选项:从<code>.py</code>文件加载代码</p>