今回は、入力として与えられた数値やリストの要素の掛け算を求めるコードをpythonで記述する方法を紹介します。
pythonで乗算を行うには、様々な方法があります。
つまり、2つの数字を渡して、num1 * num2 と表示すれば、目的の出力が得られます。
Python でユーザが入力した 2 つの数値の掛け算を行う
1. 関数を使わない場合
関数を使わずに2つの数値の積を表示する簡単なスクリプトを書いてみましょう。
単に結果を表示するだけです。
n1 = int ( input ( "Enter a number:" )
n2 = int ( input ( "Enter another number:" )
res = n1 * n2
print ( "The product is " , res)
|
と出力される。
Enter a number: 3
Enter another number: 5
The product is 15
|
2. 関数を使う場合
もしプログラムの中で何度も掛け算を使わなければならないのなら、呼び出し中に渡された数値の積を返すような関数を作らなければなりません。
そうすれば、プログラムの複雑さが軽減され、同じ関数を別の引数で何度でも呼び出せるという再利用性が生まれます。
そのような例として、次のようなものがある。
def mult(a , b):
return a * b
n1 = int ( input ( "Enter a number :" ))
n2 = int ( input ( "Enter another number :" ))
multiplication1 = mult(n1 , n2)
num1 = 6.0
num2 = 5.0
multiplication2 = mult(num1 , num2)
print ( "The product of {} and {} is {}" . format (n1 , n2 , multiplication1))
print ( "The product of {} and {} is {}" . format (num1 , num2, multiplication2)
|
上のコードの出力。
Enter a number : 4
Enter another number : 7
The product of 4 and 7 is 28
The product of 6.0 and 5.0 is 30.0
|
ここでは、積を返すmultという関数を定義しています。
この関数はコードの中で2回呼び出されています。
まず、ユーザが入力した整数の値を使用します。
2回目は、浮動小数点数を使っている。
したがって、再利用可能であることを証明します。
この記事もチェック:Pythonのmapメソッドの使い方|ラムダ関数や引数が複数の場合の使い方も解説
リストの要素に対して乗算演算を行う
さまざまな方法で、与えられたリストのすべての要素の積を表示することもできます。
1. リストを走査する方法
このメソッドでは、for ループを使ってリストを走査し、変数 res を 1 に初期化します(積が必要なので 0 ではなく、0 * anything = 0)。
res’の値は繰り返しごとに更新されます。
list1 = [ 3 , 4 , 5 ]
res = 1
for val in list1 :
res = res * val
print ( "The product of elements of the given list is " , res)
|
結果は以下の通りです。
The product of elements of the given list is 60
|
2. numpy.prod()の使用
NumPyには、リストを引数にとり、リスト内の全要素の積を返すprod()があります。
この関数は非常に便利で、多くのコードを節約することができます。
numpy.prod()を使用するには、NumPyをインポートする必要があります。
以下に例を示します。
コード
import numpy
list1 = [ 2 , 3 , 4 , 5 ]
list2 = [ 10 , 10 , 10 ]
ans1 = numpy.prod(list1)
ans2 = numpy.prod(list2)
print ( "Multiplication of elements of list1 is " ,ans1)
print ( "Multiplication of elements of list2 is " ,ans2)
|
結果は、以下の通りになります。
Multiplication of elements of list1 is 120
Multiplication of elements of list2 is 1000
|
まとめ
以上、Pythonで複数の数字を扱う方法でした。
このチュートリアルがお役に立てれば幸いです。