내가 텍스트 어드벤처 게임을 만드는거야 통해 루프와 경우 문파이썬, 대신의 많은 개체를 검사 할 때 어떻게 전체 목록
예를 들어- 만약 목록 및 위치 = 방 다음 인쇄 설명,
단어나는 목록을 통해 반복하고 아래의 If 문 하나만 가질 것이라고 생각했습니다.
위치가 1 인 경우 문이나 매트를 입력하고 설명을 얻을 수 있습니다. 위치가 2 인 경우 두 번째 문 설명이 나타나지 않습니다.
코드를 전체 목록을 반복하고 위치 2의 문 설명을 인쇄하려면 어떻게해야합니까? 당신의 도움을 주셔서 감사합니다.
list_of_objects =[
"door","A sturdy door that is firmly locked.",1,
"door","A test door. Why do I never appear?",2,
"mat","Its one of those brown bristly door mats.",1]
location = 1
word = ""
def print_description():
for x in list_of_objects:
if x == word and location == list_of_objects[list_of_objects.index(word)+2]:
print(list_of_objects[list_of_objects.index(word)+1])
return
print("Sorry, what was that ? ")
while word != "x":
word = input("Type door or mat ")
print_description()
사전을 찾고 있습니다. – hjpotter92
사전 목록으로 만드십시오. – Barmar
if 문'list_of_objects [list_of_objects.index (word) +2]'의 두 번째 부분이 항상 문에 대해 1이기 때문에 user4815162342의 대답에 설명 된대로 사전이나 튜플을 사용하십시오. 'index (word)'는'word'의 첫 번째 모습만을 고려합니다.이 경우 첫 번째 색인입니다. 인쇄물을 추가하거나 코드를 디버그하여이를 확인할 수 있습니다. – SBylemans