1
以下是.sage文件的一部分,我希望能在一个会议上称:鼠尾草5.0语法错误(
def projective_grid(m,n):
r"""
The mxn grid in projective space
"""
g = graphs.Grid2dGraph(m,n)
g = Graph(g)
for i in range(m):
g.add_edge(((i,0),(m-i-1,n-1),1))
for j in [1..(n-2)]:
g.add_edge(((0,j),(m-1,n-j-1),1))
g.delete_edge(((0,0),(m-1,n-1)))
g.add_edge(((0,0),(m-1,n-1),2))
g.delete_edge(((m-1,0),(0,n-1)))
g.add_edge(((m-1,0),(0,n-1),2))
if n%2==1 and m == 2:
g.delete_edge((0, (n-1)/2), (1, (n-1)/2))
g.delete_edge((0, (n-1)/2), (1, (n-1)/2))
g.add_edge((0, (n-1)/2),(1,(n-1)/2),2)
if n == 2 and m%2==1:
g.delete_edge(((m-1)/2, 0), ((m-1)/2, 1))
g.delete_edge(((m-1)/2, 0), ((m-1)/2, 1))
g.add_edge(((m-1)/2, 0), ((m-1)/2, 1),2)
pos = {}
k = -1
for i in [1..m]:
for j in [1..n]:
k+=1
pos[k] = (j,i)
g.set_pos(pos)
return g
我可以将此代码复制粘贴到一个圣人会议而不产生错误,但当我尝试调用带有的execfile文件(),我得到如下:
sage: execfile('/Users/WyattAlt/Desktop/thesis/stack_test.sage')
------------------------------------------------------------
File "/Users/WyattAlt/Desktop/thesis/stack_test.sage", line 9
for j in [1..(n-2)]:
^
SyntaxError: invalid syntax
如果我和范围更换有问题的零件(1,N-1)和类似的问题消失,但我想了解为什么这不起作用。有任何想法吗?提前致谢。
编辑:我在OS X 10.5.8
完美。谢谢您的帮助。 – WKA
不用担心。两点:(1)不要忘记[接受答案](http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work)给你的问题,(2)还有[ask.sagemath.org](http://ask.sagemath.org),它与StackOverflow相似,但仅适用于Sage,许多开发者都在此闲逛。 – DSM
将ask.sagemath.org上的+1作为第一个去的地方 - 但幸运的是@DSM和我们其他人偶尔在这里:) – kcrisman