2016-12-19 63 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