Python 如何将值传递给函数,然后返回新值?
因此,我试图在Python 如何将值传递给函数,然后返回新值?,python,function,Python,Function,因此,我试图在oppgave4()中实现flytt\u spiller(),以便笑脸根据输入(w/a/s/d)移动 如何将值spillerX/spillerY放入flytt_spiller(),然后对其进行更改,然后将新值返回到oppgave4() 您需要添加一个条件来停止代码,直到该条件不满足为止,然后不停地运行现有代码 def print_kart(kart): for rad in kart: print(" ".join(rad)) def oppdate
oppgave4()
中实现flytt\u spiller()
,以便笑脸根据输入(w/a/s/d)
移动
如何将值
spillerX/spillerY
放入flytt_spiller()
,然后对其进行更改,然后将新值返回到oppgave4()
您需要添加一个条件来停止代码,直到该条件不满足为止,然后不停地运行现有代码
def print_kart(kart):
for rad in kart:
print(" ".join(rad))
def oppdater_kart(spillerX, spillerY, monsterX, monsterY):
kart = []
gridline = []
for y in range(10):
gridline.append(".")
for x in range(10):
kart.append(list(gridline))
kart[spillerY][spillerX]= '\U0001f600' #smiley
kart[monsterY][monsterX] = '\U0001f47A' #goblin
print_kart(kart)
def flytt_spiller(bevegelse, spillerX, spillerY):
if bevegelse == "w":
spillerY -=1
elif bevegelse == "a":
spillerX -=1
elif bevegelse == "s":
spillerY +=1
elif bevegelse == "d":
spillerX +=1
else:
print('push wasd to move ')
return spillerY, spillerX
def oppgave4():
spillerX=1
spillerY=2
monsterX=3
monsterY=4
oppdater_kart(spillerX, spillerY, monsterX, monsterY)
bevegelse = input('move: ')
flytt_spiller(bevegelse, spillerX, spillerY)
oppdater_kart(spillerX, spillerY, monsterX, monsterY)
oppgave4()
首先,您没有实现flytt_spiller,您只是在调用它。其次,可以获取函数返回的值并将其分配给变量<代码>spillerX,spillerY=flytt_spiller(…)使用while循环并创建一个新参数以退出
def oppgave4():
spillerX=1
spillerY=2
monsterX=3
monsterY=4
exit = 10
oppdater_kart(spillerX, spillerY, monsterX, monsterY)
bevegelse = int(input('move: '))
while bevegelse!=10:
flytt_spiller(bevegelse, spillerX, spillerY)
oppdater_kart(spillerX, spillerY, monsterX, monsterY)
bevegelse = int(input('move: '))