GCSEコンピューティングを行い、宿題として以下を行う必要があります。私はプログラミングから始めたばかりで、それを行う方法を見つけようとしてきましたが、役に立ちませんでした。 function
を使用する必要があると思いますが、「python関数リスト」などを検索しても、試してみても役に立ちません。
方法を教えていただけますか:
「番号のリスト」を入力するようにユーザーに依頼します
確認のためにこれらの番号を印刷してください
それらを変数に変換しますか?
それらを一緒に追加します
合計を入力された数字の数で割ります-それをどのように行うかについてのほんの少しの手がかりさえありません!
最後に、印刷Average is
とその結果。
私が現在持っているもの:
print("Welcome, this program will find the average of a list of numbers you enter.")
numbers = input("Enter your numbers, seperated by spaces.")
print("You have entered")
print(numbers)
print(numbers[0])
print(numbers[1])
print(numbers[2])
print(numbers[3])
print(numbers[4])
print(numbers[5])
print(numbers[6])
print(len(numbers))
print("The average of the above numbers is: ") #FURTHEST I'VE GOT
Pythonの組み込み関数sum
を使用できます
sum
は、すべての値の合計を返しますlen
は、リストの長さを取得しますコード:
>>> list = [1,2,3,4]
>>> sum(list)
>>> 10
>>> len(list)
>>> 4
>>> avg = float(sum(list))/len(list)
>>> 2.5
>>>"""In pyton3 don't want to specify float"""
>>> 10 / 4
>>> 2.5
python 2.xを使用する場合は、floatを使用します。理由は次のとおりです。
int/int
はint値を返します(つまり2)float/int
はfloat値を返します(つまり2.5)Python 3.x:
int/int
リターンフロートint//int
return intリストを反復処理し、すべての数値を合計してから、その合計をリスト内の要素の数で除算します。これを実現するには、forループを使用できます。
average = 0
sum = 0
for n in numbers:
sum = sum + n
average = sum / len(numbers)
Forループは、リスト内の各要素を調べて、それを現在の合計に追加します。次に、リストの長さ(またはリスト内の要素の数)で割って、平均を求めます。
pythonリファレンスをグーグルで検索して、ループや条件などの一般的なプログラミングの概念を使用して、開始時に快適に感じる方法を見つけることをお勧めします。オンラインで調べることができる優れたリソースがたくさんあります。 。
幸運を!
numpy
パッケージがある場合:
In [16]: x = [1,2,3,4]
...: import numpy
...: numpy.average(x)
Out[16]: 2.5
input()関数は、「数値のリスト」を含む可能性のある文字列を返します。 numbers [2]演算は、iterableの3番目の要素を返すことを理解しておく必要があります。文字列is反復可能ですが、文字の反復可能であり、これは必要なものではありません-入力文字列の数を平均化する必要があります。
したがって、garypriceで示される平均に到達する前に、2つのことを行う必要があります。
手順1のヒント:入力文字列をスペース以外の部分文字列に分割する必要があります。
ステップ2(文字列を整数に変換する)は、グーグルで簡単に見つけることができます。
HTH
簡単な数学..
def average(n):
result = 0
for i in n:
result += i
ave_num = result / len(n)
return ave_num
input -> [1,2,3,4,5]
output -> 3.0