所以我有以下问题我需要在函数中修改全局变量,因此在下一个周期中它可以在我需要的范围内进一步
def down(turtleN,posx,posy,up): #function that needs to modify the global variables
move = random.randint(0,1)
if move == 1: #goes down to the left
posx += 1
posy += 1
turtleN.goto(listPos[up][posx][posy])
else: #goes down to the right
if posy == 0: #keep it in range of the list
posx += 1
posy = 0
turtleN.goto(listPos[up][posx][posy])
else:
posx += 1
posy -= 1
turtleN.goto(listPos[up][posx][posy])
def movimiento(N):
global posx1
global posy1
global peso1
posx1 = 0
posy1 = 0
peso1 = 0
for k in range(N):
down(turtle1,posx1,posy1,0)
答案 0 :(得分:0)
如果您希望变量是全局变量,为什么要将它们用作函数的参数?从参数中删除它们并将其声明为global
语句的全局变量(与在其他函数中一样)。