为什么我会收到错误和无限循环?

时间:2018-02-23 20:28:16

标签: python python-2.7

这是个问题。  编写一个名为fruit_list.py的shell(基于文本)程序,用于创建水果名称列表(' Apple',' Orange',' Banana', ' Water Melon',#39; Pear')并要求用户从1到5中选择一个数字。然后程序在列表中打印相应的项目。请注意项目编号和列表索引之间的差异。请参阅下面的示例。 例如:

PS C:\Users\ssiva\Desktop> python fruit_list.py
Pick a number between 1 and 5: 3
You got a Banana.
PS C:\Users\ssiva\Desktop>

这是我更新的输入:

x = ['Apple', 'Orange', 'Banana', 'Water Melon', 'Pear']
y = [1, 2, 3, 4, 5]
fruits = str(raw_input())

while fruits > "5" or fruits <= "0":
print " Pick a number between 1 and 5:"
fruits = str(raw_input()) 

else:
 print x

错误就是打印所有的水果。我想要每个水果与每个水果合作,但所有这些都是印刷品。

这是错误: mes-MacBook-Air:桌面me $ python fruit_list.py

选择1到5之间的数字: 0  选择1到5之间的数字:

选择1到5之间的数字: 7  选择1到5之间的数字: 2 [&#39; Apple&#39;,&#39; Orange&#39;&#39; Banana&#39;,&#39; Water Melon&#39;&#39; Pear&#39;] mes-MacBook-Air:桌面me $

1 个答案:

答案 0 :(得分:0)

您发布的提示并不意味着需要循环播放。

fruit_list = ['Apple', 'Orange', 'Banana', 'Water Melon', 'Pear']
usr_num = int(input('Pick a number between 1 and 5.'))
print fruit_list[usr_num-1]

这对我有用。我不知道你在循环中走向何方。请避免将x和y用于可明确命名的项目('fruit_list')。

编辑:只想添加我从usr_num中减去1,因为python索引从0开始而不是1。