2016-09-05 11 views
-1

저는 파이썬을 처음 접했고 나에게 설명하기를 원하는 아주 간단한 문제가 있습니다. 나는 텍스트 어드벤처 게임을 만들고 있는데, 함수 내에서 다른 함수를 호출하여 코드가 잘 구성되도록하고 싶습니다.입력에 따라 올바른 응답을 인쇄하려면 어떻게해야합니까?

def displayIntro(): 
    print("You come to a crossroads on your trip home.") 
    print ("You can go LEFT towards the DEMON FOREST or RIGHT to SKULL MOUNTAIN") 
    print() 

def choosePath(): 
    path = "" 
    while path != "LEFT" and path != "RIGHT": 
     path = input("Which path will you choose? LEFT or RIGHT? --> ") 
    if path == "RIGHT": 
     print("You take the path to SKULL MOUNTAIN.") 
    elif path == "LEFT": 
     print ("You take the path to the DEMON FOREST.") 




displayIntro() 
choosePath() 
choosenPath() 

을하지만 난 이런 걸보고를하고 싶습니다,하지만 난 그것을 작동하게하는 방법을 모른다 :

def displayIntro(): 
    print("You come to a crossroads on your trip home.") 
    print ("You can go LEFT towards the DEMON FOREST or RIGHT to SKULL MOUNTAIN") 
    print() 

def choosePath(): 
    path = "" 
    while path != "LEFT" and path != "RIGHT": 
     path = input("Which path will you choose? LEFT or RIGHT? --> ") 
    return path 


def checkPath(choosePath): 

    if choosePath == "RIGHT": 
     print("You take the path to SKULL MOUNTAIN.") 
    elif choosePath == "LEFT": 
     print("You take the path to the DEMON FOREST.") 



displayIntro() 
choosePath() 
checkPath() 
+0

'checkPath'는 매개 변수를 사용합니다.'checkPath (choosePath())' – Li357

+0

[전에] (http://stackoverflow.com/q/39337309/2301450) 요청하지 않았습니까? – vaultah

+0

@vaultah 옙.하지만 아무 이유없이 투표를하고 응답하지 않았습니다. 코드 작성법을 아는 사람이라면 5 초 만에 응답 할 수있는 아주 간단한 것 같습니다. – DavidK

답변

1

당신은 checkPathchoosePath의 반환 값을 전달해야합니다.

checkPath(choosePath()) 

checkPath은 매개 변수를 취하므로 값을 제공해야합니다. 이 값은 choosePath의 반환 값인 "LEFT"또는 "RIGHT"입니다. 일단 패스하면 checkPath 함수가 실행되어 문자열을 검사하고 그에 따라 인쇄합니다. choosePathcheckPath 호출을 위 코드로 바꿉니다.

2

내가 일하고있어 그 무엇을 가지고 choosePath()의 반환 값을 checkPath()으로 전달하지 않습니다. 그것은해야한다 :

path = choosePath() 
checkPath(path) 

또는 한 - 라이너 :

checkPath(choosePath()) 
관련 문제