[Python]リスト(List)の全要素の小数点以下を切り捨てるには?

python

どうも、ちょげ(@chogetarou)です。

リスト(list)の全要素の小数点以下を切り捨てる方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

リスト(List)の全要素の小数点以下を切り捨てる方法は、3つあります。

内包表記

1つ目は、内包表記を使う方法です。

まず、mathをインポートします。

import math

次に、[]を記述し、[]内でリストをforループします。

forループの処理でmath.floor()を呼び出します。

そして、math.floor()の引数にforループしたリストの要素を指定します。

result = [math.floor(i) for i in list]

上記の[]は、[]内でforループしたリスト(List)の全要素の小数点以下を切り捨てたリストを生成します。

使用例

import math

numbers = [1.3, 2.5, 3.901, 4.444, 5.623]

result = [math.floor(i) for i in numbers]

print(result)
#[1, 2, 3, 4, 5]

map()

2つ目は、map()を使う方法です。

まず、mathをインポートします。

import math

次に、list()を呼び出し、list()の引数でmap()を呼び出します。

map()の第1引数にラムダ式、第2引数にリストを指定します。

そして、map()のラムダ式で、math.floor()を呼び出します。

math.floor()の引数に、ラムダ式の引数を指定します。

result = list(map(lambda x: math.floor(x), myList))

上記のlist(map())は、map()の第2引数に指定したリスト(List)の全要素の小数点以下を切り捨てたリストを生成します。

使用例

import math

numbers = [1.3, 2.5, 3.901, 4.444, 5.623]

result = list(map(lambda x: math.floor(x), numbers))

print(result)
#[1, 2, 3, 4, 5]

numpy.floor()

3つ目は、numpy.floor()を使う方法です。

まず、numpyをインポートします。

import numpy as np

次に、list()を呼び出します。

list()の引数でnumpy.floor()を呼び出します。

そして、numpy.floor()の引数にリストを指定します。

result = list(np.floor(myList))

上記のlist(np.floor())は、floor()の引数に指定したリスト(List)の全要素の小数点以下を切り捨てたリストを生成します。

使用例

import numpy as np

numbers = [1.3, 2.5, 3.901, 4.444, 5.623]

result = list(np.floor(numbers))

print(result)
#[1.0, 2.0, 3.0, 4.0, 5.0]

まとめ

リスト(List)の全要素の小数点以下を切り捨てる方法は、次の3つです。

  • 内包表記を使う方法
  • map()を使う方法
  • numpy.floor()を使う方法

コメント

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