我不明白move方法是怎么回事。我正在选修Udacity.com的AI课程。视频位置为:http://www.udacity.com/view#Course/cs373/CourseRev/apr2012/Unit/512001/Nugget/480015
下面是我不明白的代码,它不能像视频中显示的那样工作。根据Udacity,我应该得到的答案是0,0,1,0,0
这是我得到的[]
p=[0, 1, 0, 0, 0]
def move(p, U):
q = []
for i in range(len(p)):
q.append(p[(i-U) % len(p)])
return q
print move(p, 1)发布于 2012-11-12 00:51:34
缩进问题。您应该将return语句移到for循环之外,否则它将在第一次迭代后立即返回:-
for i in range(len(p)):
q.append(p[(i-U) % len(p)])
return q而且,您的原始代码不仅返回[],还返回[0]。
发布于 2012-11-12 00:51:57
你的返回值不应该缩进到for循环中...
p=[0, 1, 0, 0, 0]
def move(p, U):
q = []
for i in range(len(p)):
q.append(p[(i-U) % len(p)])
return q
print move(p, 1)https://stackoverflow.com/questions/13333244
复制相似问题