-1

在以下代码中,我无法接受来自控制台的输入列表值。

    s=[]
for i in range(10):
    s[i]=int(input('enter integers from 1 to 10\n'))


mini=11
for temp in s:
    if mini>temp:
            mini=temp
print('minimum : '+str(mini))

maxi=0
for temp in s :
    if maxi<temp:
        maxi=temp
print('maximum :'+str(maxi))

IndexError : 列表参数索引超出范围。

找不到索引超出范围的位置。请帮助,在此先感谢。

4

2 回答 2

3

你应该是appending,你不能索引一个空列表,所以当列表为空s[i]时会立即失败:s[0]

s = []
for i in range(10):
   s.append(int(input('enter integers from 1 to 10\n')))

mini,maxi = 0, 11
for temp in s:
    if temp < mini:
        mini = temp
    if temp > maxi:
        maxi = temp
print('minimum : '+str(mini))
print('maximum :'+str(maxi))

您也可以像上面那样在一个循环中检查这两个,而不是在s.

您还可以使用 list compt 创建您的数字列表:

s = [int(input('enter integers from 1 to 10\n')) for _ in range(10)]
于 2015-07-16T11:10:47.817 回答
1

您应该附加到列表中。

s=[]
for i in range(10):
    s.append(int(input('enter integers from 1 to 10\n')))


mini=11
for temp in s:
    if mini>temp:
        mini=temp
print('minimum : '+str(mini))

maxi=0
for temp in s :
    if maxi<temp:
        maxi=temp
print('maximum :'+str(maxi))
于 2015-07-16T11:10:41.570 回答