【发布时间】:2015-09-29 13:33:32
【问题描述】:
这是我的代码。我无法在列表中保存超过 1 项,我不知道为什么。
该程序的重点是保存单词(如“香蕉”),然后为其添加描述(“黄色”)。我正在使用 Python 2.7
word = []
desc = []
def main_list():
print "\nMenu for list \n"
print "1: Insert"
print "2: Lookup"
print "3: Exit program"
choice = input()
print "Choose alternative: ", choice
if choice == 1:
insert()
elif choice == 2:
look()
elif choice == 3:
return
else:
print "Error: not a valid choice"
def insert():
word.append(raw_input("Word to insert: "))
desc.append(raw_input ("Description of word: "))
main_list()
def look():
up = raw_input("Word to lookup: ")
i = 0
while up != word[i]:
i+1
print "Description of word: ", desc[i]
main_list()
【问题讨论】:
-
你期待什么,你会得到什么?
-
你如何运行这个?没有调用这些的 main 方法。
-
如果我只插入单词“banana”和描述“yellow”,一切正常,但如果我还添加其他内容,例如带有描述的“computer”,那么我只能查看() “香蕉”。如果我用“计算机”看()什么也没发生,程序似乎永远加载。你认为 Python 2.7 可能有问题吗?
-
在你的代码中尝试
i += 1而不是i+1。没有分配发生,所以外观只是不断检查列表中的相同位置。 -
@Kaiser 你为什么使用递归调用没有必要