I want to make a model of "walking" over a gird.
so I created 8 functions:
g0 = lambda ct: ct.append((lambda (x,y): (x-1,y))(ct[-1]))
g1 = lambda ct: ct.append((lambda (x,y): (x-1,y+1))(ct[-1]))
g2 = lambda ct: ct.append((lambda (x,y): (x,y+1))(ct[-1]))
g3 = lambda ct: ct.append((lambda (x,y): (x+1,y+1))(ct[-1]))
g4 = lambda ct: ct.append((lambda (x,y): (x+1,y))(ct[-1]))
g5 = lambda ct: ct.append((lambda (x,y): (x+1,y-1))(ct[-1]))
g6 = lambda ct: ct.append((lambda (x,y): (x,y-1))(ct[-1]))
g7 = lambda ct: ct.append((lambda (x,y): (x-1,y-1))(ct[-1]))
but when I try to apply any function I get None
:
print g0([(50,50)])
None
well, Iet's try more traditional way:
def g0(ct):
ct.append((lambda (x,y): (x-1,y))(ct[-1]))
return ct
that's works as expected:
[(50, 50), (49, 50)]
But when I try
def g0(ct):
return ct.append((lambda (x,y): (x-1,y))(ct[-1]))
the result is also None
, Why?