Pythonでリストや配列の中から最小の数を求める方法3つ|min,sort,for文を使ってやるよ

スポンサーリンク

今回は、Pythonで最小の数を求める基本的なコードを理解したい初心者のための記事です。

では、はじめましょう。

スポンサーリンク

How to find the Smallest Number in Python?

Pythonで、リストで与えられたすべての数のうち、最小の数を見つけることを目指します。

例えば、リストが [32, 54, 67, 21]

出力は次のようになるはずです。

この記事では、これを行うための3つの異なる方法を理解します。

1. Pythonのmin()を使う

min()はpythonの組み込み関数で、引数としてリストを受け取り、リストの中の最小の数を返します。

以下に例を示します。

#declaring a list
list1 = [-1, 65, 49, 13, -27]
print ("list = ", list1)
 
#finding smallest number
s_num = min (list1)
print ("The smallest number in the given list is ", s_num)

結果は、以下の通りになります。

list = [-1, 65, 49, 13, -27]
The smallest number in the given list is  -27

これは最小の数を見つける最も簡単な方法の一つです。

min()に引数としてリストを渡すだけでよい。

2. Pythonのsort()を使う

sort()はpythonのもう一つの組み込みメソッドで、リストの最小の数を返しません。

その代わり、リストを昇順にソートします。

ですから、リストをソートすることで、インデックスを使ってリストの最初の要素にアクセスすることができ、それがリストの最小の数字となります。

では、そのコードを見てみましょう。

#declaring a list
list1 = [17, 53, 46, 8, 71]
print ("list = ", list1)
 
#sorting the list
list1.sort ()
 
#printing smallest number
print ("The smallest number in the given list is ", list1[0])

結果は以下の通りです。

list =  [17, 53, 46, 8, 71]
The smallest number in the given list is 8

3. forループの使用

ls1 = []
total_ele = int (input (" How many elements you want to enter? "))
 
#getting list from the user
for i in range (total_ele):
  n =int (input ("Enter a number:"))
  ls1.append(n)
print (ls1)
min = ls1[0]
 
#finding smallest number
for i in range (len (ls1)):
  if ls1[i] < min:
    min = ls1[i]
print ("The smallest element is ", min)

上のコードでは、2つのforループを使っている。

1つはユーザーからリストの要素を取得するため、もう1つはリストの中から最小の数を見つけるためです。

ユーザーから要素を取得した後、リストの最初の要素(0インデックス)を最小の数(min)と定義します。

そして、forループでリストの各要素をminと比較し、minより小さい要素があれば、それが新しいminとなります。

このようにして、ユーザーから与えられたリストから最小の数を得るのです。

上記のコードの出力は以下の通りです。

How many elements you want to enter? 4
Enter a number: 15
Enter a number: 47
Enter a number: 23
Enter a number: 6
[15, 47, 23, 6]
The smallest number is  6

まとめ

以上、Pythonで与えられたリストから最小の数を求める方法をいくつか紹介しました。

ご理解いただけたでしょうか?もし何か質問があれば、下記までお気軽にどうぞ。

ありがとうございました。

タイトルとURLをコピーしました