-1

プログラムはユーザーからの入力を求めます: inp = input("Enter numbers")

ユーザーは 4535435439 のように番号を入力するかもしれません。私の最初の質問は、番号をリストとして保存する方法です。たとえば、ユーザーが 12、14、15 と入力した場合、各数値をリストとして保存したいと考えています。インビルド機能はありますか?そして、そのリストから最大値、最小値、平均値を取得するにはどうすればよいですか?

PSコードは必要ありません。論理的に教えてください。どうすればいいのか教えてください。次に、それをコードに変換してここに挿入します。ありがとうございました!

4

3 に答える 3

1

数字がコンマで区切られている場合は、幸運です

import ast
numbers = ast.literal_eval(inp)

数字のタプルが得られます。タプルをリストに変換するのは簡単です

numbers = list(numbers)

関数がありmin()max()最小値と最大値を見つけるために使用できます。numbersそれらに渡すだけです

このような組み込み関数なしでmin(または)実行できますmax

min_number = numbers[0]
for n in numbers:
    if n < min_number:
        min_number = n

max似ている

平均を求めるには、数値を足して長さで割ります

total = 0
for n in numbers:
    total += n
average = float(total)/len(numbers)

Python2 では、数値の 1 つを に変換する必要がありますfloat。そうしないと、整数除算が得られます。input()うまくいけば、代わりにPython3を使用していることがわかりますraw_input()

ショートカットの方法は、sum()関数を使用することです

average = sum(numbers)/len(numbers)
于 2012-08-14T10:25:38.883 に答える
1
min(int(x) for x in raw_input().split(','))

ユーザーからの入力を取得します。文字列がカンマ区切りの数値の場合、たとえば1, 2, 3, 4、これは文字列を各数値に分割し、それらを整数に変換し、その値のリストの最小値を見つけます。

于 2012-08-14T10:27:10.250 に答える
0

ループ内でユーザーに数値を要求し、空の入力を end if input として受け入れてループから抜け出すことができます。ループでは、入力をリストに追加するだけです。

于 2012-08-14T10:29:51.153 に答える