我在Golly的Scripts文件夹中有以下代码,但它返回了一个属性错误,我无法找到为什么会发生 * 。
如果您了解生命游戏:应该将感应线圈自动放置在选定的不稳定模式附近,但这只是原型。
import golly as g
import random as r
coilsinp = g.getstring('Python list of induction coils to use?', '', 'Induction coils')
layerinp = g.getstring('Maximum number of induction coils inducting each other?')
mcoilinp = g.getstring('Maximum number of induction coils?')
if coilsinp == '':
coillist = [g.parse('2o$2o!'), g.parse('bo$obo$bo!'), g.parse('b2o$o2bo$bobo$2bo!'). g.parse('b3o$o2bo$bobo$2bo!'). g.parse('3o$o2bo$b2o!'), g.parse('3o$o2bo$2b2o!')]
else:
coillist = coilsinp.split(',')
if layerinp != '':
maxlayers = layerinp
else:
maxlayers = 3
if mcoilinp != '':
maxcoils = mcoilinp
else:
maxcoils = 12
dpa = (maxcoils - r.randint(0, maxcoils))
tosel = g.getcells(g.getselrect)
dasel = g.getselrect
g.addlayer()
g.putcells(tosel, 0, 0)
g.select(0, 0, dasel[2], dasel[3])
while true:
while dpa > 0:
g.putcells(coilsinp[r.randint(0, 5)], r.randint(-11, (dasel[2] + 11), r.randint(-11, (dasel[3] + 11))
dpa -= 1
if g.getselrect == g.evolve(g.getcells(g.getselrect), 50):
break
回溯指向第9行。
* 在编辑时,我已经发现了。我只是澄清这个主题是什么。
答案 0 :(得分:2)
查看第3,第4和第5列表元素之间的源代码第9行。你用句号而不是逗号分隔,给你一个长元素
g.parse('b2o$o2bo$bobo$2bo!'). g.parse('b3o$o2bo$bobo$2bo!'). g.parse('3o$o2bo$b2o!')
解析器在g.parse('b2o$o2bo$bobo$2bo!'). g
处被占用,因为解析器的返回没有任何名为“g”的属性(就在括号之后)。
这会让你感动吗?