只是一个快速的男人和女孩,它是关于用户定义的函数内的return语句。 这可能只是我有点简单,但这里有: -
在此示例中,他返回5,然后将number变量设置为= give_me_five。所以现在我认为所有return语句都应该属于函数的初始名称。
def give_me_five():
five = 5
return five
# main
display("Here's a message for you.\n")
number = give_me_five()
print("Here's what I got from give_me_five():", number)
到目前为止这么好吗?好好抓住你的裤子。
EMPTY = " "
def new_board():
"""Create new game board."""
board = []
for square in range(NUM_SQUARES):
board.append(EMPTY)
return board
在上面的代码中,他创建了一个名为board的新列表,并用空格填充它 - “”。然后他返回董事会,所以现在new_board = board。
但是在下一个用户定义的函数中,他只是调用返回名称板?!
def display_board(board):
"""Display game board on screen."""
print("\n\t", board[0], "|", board[1], "|", board[2])
print("\t", "---------")
print("\t", board[3], "|", board[4], "|", board[5])
print("\t", "---------")
print("\t", board[6], "|", board[7], "|", board[8], "\n")
他还告诉我们,函数无法在彼此内部看到,所以他是如何从new_board中提取板的?
对于这篇冗长的帖子感到抱歉,但任何帮助都会受到赞赏(毕竟不是那么快)。
由于
答案 0 :(得分:1)
我认为一些混乱源于对参数缺乏了解。如果查看display_board(board)
,括号内的board
是一个变量。在display_board(board)
内,他正在查看提供的board
的内容,而不是new_board
中定义的内容。
为了帮助理解它,他可以像这样轻松定义display_board
:
def display_board(variable):
"""Display game board on screen."""
print("\n\t", variable[0], "|", variable[1], "|", variable[2])
print("\t", "---------")
print("\t", variable[3], "|", variable[4], "|", variable[5])
print("\t", "---------")
print("\t", variable[6], "|", variable[7], "|", variable[8], "\n")
只要他使用display_board
的{{1}}来调用new_board
,就像这样......
b = new_board()
display_board(b)
board
(或variable
)的名称在display_board