我有以下代码,它有效。但我对列表依赖感到震惊 以0开始索引。即
当用户选择时,1它需要第0个元素 当用户选择时,2它需要第一个元素 当用户选择时,3它需要第二个元素..我继续这样。
我想要克服这一点,但不要像内部转换给定的text = text-1那样。请帮忙。与任何其他解决方案
import numpy as np
Ran=[np.random.randint(1,5)]
Val=Ran[0]
print(Val)
#Items
items=['1. pot plant','2. painting','3. vase','4. lampshade','5. shoe']
print ("\n")
#Intro Text
print ("Last night you went to sleep in the comfort of your own home.")
print ("Now, you find yourself locked in a room. You don't know how")
print ("you got there or what time it is. In the room you can see")
print ("\n")
print (len(items), "Things:")
for x in items:
print (x)
print ("")
print ("The door is locked. Could there be a key somewhere?")
print ("Enter the corresponding number of thing which you \
would like to check..Yougot only 3 chances !! ")
k=0
while (k==0):
Ins1 = int(input())
if (Ins1 == Val):
print("You're Lucky! Got the key in First instance ")
break
else:
c=items[Ins1]
print("Damn ! key is not available in ", c , "Try again..")
Ins2 = int(input())
if (Ins2 == Val):
print("Got the key on your 2nd attempt")
break
else:
c=items[Ins2]
print("Bad luck ! Try again..not in ", c ,"your last attempt")
Ins3 = int(input())
if (Ins3 == Val):
print("Finally you got the key")
break
else:
c=items[Ins3]
print("you're done. Die here :( Key not in ",c,)
break
答案 0 :(得分:0)
已在评论中解决:
Just put a dummy '' value at the beginning of items. – Paul McGuire But the user will view the dummy value, as am printing the options to him. – Abdul Salam Just start at 1 then: for x in items[1:]: print(x) – Paul McGuire Thanks Paul ! It works Fine :)