2016-12-19 64 views
0

这是代码的摘录:进口功能不能正常工作蟒蛇

import game_state 

game_state 
Out[65]: <module 'game_state' from 'C:\Users\Bob\Python\Pygame practice\Connect Four\game_state.py'> 

game_state.get_available_moves(columns) 

moves = game_state.get_available_moves(columns) 

print moves 
None 

get_available_moves(columns) 
Out[69]: [[5, 0], [5, 1], [5, 2], [5, 3], [5, 4], [5, 5], [5, 6]] 

这里是一个将在“game_state.py”

def get_available_moves(columns): 
    available_moves = [] 
    for i in xrange(7): 
     for j in xrange(5, -1, -1): 
      if columns[j, i] != 0: 
       continue 
      else: 
       available_moves.append([j, i]) 
       break 
    return available_moves 

当我只是用保存在“get_available_moves”功能函数“get_available_moves”,它正确执行。但是,当我尝试导入并使用它时,它不返回任何输出。我对编码非常陌生,希望对此发生的原因有所帮助。如果问题不在这里,我也可以为函数提供代码。提前致谢。

+1

您应该显示代码。请注意,您发布的摘录令人困惑,因为您似乎以两种不同的方式访问它 - 您确定“get_available_moves”与“game_state”相同。 get_available_moves'? –

+0

嗯,我相信我做错了什么,因此它不是,我只是不知道它是什么 – mrnovice

回答

0

因为game_state.get_available_moves根本不会返回任何东西。如果你看看它的代码,你会发现它没有return声明,或(不太可能)它有return None

看来game_state.get_available_moves和“本地”get_available_moves功能不一样。

+0

我如何编辑代码以获得“get_available_moves”函数来正确输出?我很抱歉,但我不太明白,我认为game_state只是一个从中导入我的函数的模块。 – mrnovice