【Python連載】リストに対して使える便利なメソッド


ココまでの連載でリストに関して色々なメソッドを紹介してきましたが、
リストを扱う事ができるメソッドは多く存在します。

今回はその中でもよく使うメソッドを紹介していきます。


便利なメソッドたち

目次

  • 最大・最小
  • 合計
  • 平均
  • ランダムに取り出す

・最大・最小

最大と最小を求めるにはmax()min()を使います。
それぞれの引数にリストを渡すだけで使用できます。

nums = [99, 75, 3000, 0]

print("---最大値---")
print(max(nums))
print("---最小値---")
print(min(nums))
C:\Python> python util1.py
—最大値—
3000
—最小値—
0

・合計

合計を求めるにはsum()を使います。
こちらも引数にリストを渡すだけで使用できます。

nums = [99, 75, 3000, 0]

print("---合計---")
print(sum(nums))

C:\Python> python util2.py
—合計—
3174

・平均

合計が求められたので、後は要素数があれば平均を求められます。
要素数はlen()にリストを渡すことで数えられました。

nums = [99, 75, 3000, 0]

print("---平均---")
print(sum(nums)/len(nums))
C:\Python> python util3.py
—平均—
793.5

これで平均を求められました。
が、平均を求める方法はこれだけではありません。
Python3.4以降ではstatisticsというライブラリがあり、そのライブラリ内に平均を求めるメソッドが容易されています。
※ライブラリとは?に関しては別記事で説明予定なので、今は便利なメソッドが集まっているものという風に思っておいてください。

import statistics #statisticsを使うための準備です。

nums = [99, 75, 3000, 0]

print("---平均---")
print(statistics.mean(nums))
C:\Python> python util4.py
—平均—
793.5

この様に同じ値を求める事ができました。
平均に限らず、目的に対して手段は一つだけとは限りませんので、
色々調べてみる事をおすすめします。


・ランダムに取り出す

randomモジュールを使用することで、要素をランダムに取り出す事ができます。
※モジュールとは?もライブラリ同様に別記事で説明します。

import random #randomを使うための準備です。

nums = [20, 100, 60]

print("---ランダムに取り出す1回目---")
print(random.choice(nums))

print("---ランダムに取り出す2回目---")
print(random.choice(nums))

print("---ランダムに取り出す3回目---")
print(random.choice(nums))

C:\Python> python util5.py
—ランダムに取り出す1回目—
20
—ランダムに取り出す2回目—
100
—ランダムに取り出す3回目—
100

1~3回目でリストからランダムに取り出させている事が確認でき、
プログラムを複数回実行すると毎回結果が変わっている事が確認できると思います。

まとめ

リストを扱うための便利なメソッドは多く存在しています。
自分自身で同じような実装を行うことはできますが、
時間がかかったり、動作確認をしっかりしておかなければバグを生んでしまうかも知れません。

標準のメソッドを使うことで時間や手間を省く事ができるので使えるものは使っていきましょう。


確認問題

1.以下のリストからランダムに要素を取り出し、
 取り出した要素が[最大/最小/平均/平均より大きい/平均より小さい]のいずれであるかを判定してみましょう。

nums = [20, 100, 30, 60, 90]
  • このエントリーをはてなブックマークに追加

PAGE TOP