【发布时间】:2015-11-22 02:35:34
【问题描述】:
我正在尝试传递从一个函数创建的两个整数的列表,以便我可以在后续函数中操作它们。
def rollDie(number):
throw = []
for i in range(number):
roll = random.randint(1,6)
throw.append(roll)
return throw
所以我创建了另一个调用 rollDie() 结果的函数 game():
def game(self,number):
if self.rollDie[0] != 1 or self.rollDie[1] != 1:
round_score = self.rollDie[0] + self.rollDie[2]
return round_score
但是当我调用函数 game() 时,它不会从 rollDie() 中提取两个整数:
print(game(2))
返回错误:
TypeError: game() missing 1 required positional argument: 'number'
我研究了 here、here、here 以及 stackoverflow 中的其他地方。我希望有人可以提供帮助。非常感谢您的耐心等待。
【问题讨论】:
-
你为什么给
game一个self参数?是在课堂上吗?我认为您应该阅读 the Python tutorial 以了解 Python 中函数的基础知识。 -
请注意,
game()使用的是self.rollDie[2]。你的意思可能是self.rollDie[1]。
标签: python python-3.x