簡體   English   中英

如何從函數中獲取列表值? (蟒蛇)

[英]How do I get list values from the function? (python)

我在python中有2個單獨的文件。 在一個文件中,我將此代碼包含在“游戲”類中:

def getPosition(self,score):
    position = [((3,1), 'Good'),((1,2), 'Bad')]
    return position

然后,在第二個文件中,我有一個函數接收此類“游戲”,其中存在“ getPosition”函數:

def calculateNextStep(game):
    actions = []
    actions.append(game.getPosition[0])
    return actions

我只想將getPosition位置0處的列表值附加到動作中,但出現此錯誤:

line 95, in calculateNextStep
  actions.append(game.getPosition[0])          
TypeError: 'instancemethod' object has no attribute '__getitem__'

我顯然不了解Python的一些關鍵部分。 我已經嘗試過研究,但是我完全迷失了方向,現在有了幾種理論。

通過使用game.getPosition[0]您試圖訪問屬於游戲的數組getPosition 相反,由於getPosition是一個函數,因此必須首先像這樣getPosition()一樣在末尾添加()來調用它。 現在,當getPosition()返回一個數組時,您可以通過首先調用來訪問第一個元素,他們可以像這樣通過getPosition()[0]

用示例編輯:

def calculateNextStep(game):
    actions = game.getPosition()[0] 
    return actions 

這將返回元組:

((3,1), 'Good')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM