-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))

を 2 回反復する代わりに、上記のように 1 つのループで 2 つをチェックすることもできます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 に答える