💭

Pythonの初心者レッスンーーPython数値型(number)

2024/06/14に公開

シーリズの目次

Pythonの初心者レッスンをここにまとめています。
https://zenn.dev/datasciencekun/articles/319e0f4b4021c5

数値型(number)の種類

Python3における数値型は、数値を表現するためのデータ型です。Pythonには主に以下の3つの基本的な数字型があります:

  1. 整数型(int)
  2. 浮動小数点数型(float)
  3. 複素数型(complex)
  • 整数型(int)
    整数型は、負の数、ゼロ、および正の数を表すために使用されます。整数型の数値は、任意の精度を持つことができます。
    例:
a = 10
b = -5
c = 0
  • 浮動小数点数型(float)
    浮動小数点数型は、実数を表すために使用されます。浮動小数点数は、小数点以下の桁数を持つ数値です。
    例:
x = 3.14
y = -2.71
z = 0.0
  • 複素数型(complex)
    複素数型は、実部と虚部を持つ数値を表すために使用されます。複素数は a + bj の形式で表され、a は実部、b は虚部、j は虚数単位を示します。
    例:
p = 1 + 2j
q = -3 + 4j
r = 0 + 0j

数値型に関する操作

  1. 型の確認
a = 10
x = 3.14
p = 1 + 2j
print(type(a))  # <class 'int'>
print(type(x))  # <class 'float'>
print(type(p))  # <class 'complex'>
  1. 型の変換
    • 整数から浮動小数点数への変換
    a = 10
    x = float(a)
    print(x)  # 10.0
    
    • 浮動小数点数から整数への変換
    y = 3.14
    b = int(y)
    print(b)  # 3
    
    • 整数から複素数への変換
    a = 10
    p = complex(a)
    print(p)  # (10+0j)
    

数学的な操作

基本的な演算

a = 10
b = 20

# 加算
result = a + b
print(result)  # 30

# 減算
result = a - b
print(result)  # -10

# 乗算
result = a * b
print(result)  # 200

# 除算
result = a / b
print(result)  # 0.5

# 整数除算
result = a // b
print(result)  # 0

# 剰余
result = a % b
print(result)  # 10

# 累乗
result = a ** 2
print(result)  # 100

数列の操作

numbers = [1, 2, 3, 4, 5]

# 合計
total = sum(numbers)
print(total)  # 15

# 平均
average = total / len(numbers)
print(average)  # 3.0

# 最大値と最小値
maximum = max(numbers)
minimum = min(numbers)
print(maximum)  # 5
print(minimum)  # 1

組み込み関数

Pythonには、数学的な操作を行うためのいくつかの組み込み関数も用意されています。

# 絶対値
print(abs(-7))  # 7

# 累乗
print(pow(2, 3))  # 8

# 四捨五入
print(round(3.14159, 2))  # 3.14

# 最大値と最小値
print(max(1, 2, 3))  # 3
print(min(1, 2, 3))  # 1

# 和
print(sum([1, 2, 3, 4, 5]))  # 15

mathモジュール

mathモジュールには、実数を扱うための数学関数が含まれています。以下に主要な関数をいくつか紹介します。

import math

# 平方根
print(math.sqrt(16))  # 4.0

# 自然対数(ln)
print(math.log(10))  # 2.302585092994046

# 基数を指定した対数
print(math.log(100, 10))  # 2.0

# 三角関数
print(math.sin(math.pi / 2))  # 1.0
print(math.cos(0))            # 1.0
print(math.tan(math.pi / 4))  # 1.0

# 逆三角関数
print(math.asin(1))  # 1.5707963267948966 (pi/2)
print(math.acos(1))  # 0.0
print(math.atan(1))  # 0.7853981633974483 (pi/4)

# 定数
print(math.pi)   # 3.141592653589793
print(math.e)    # 2.718281828459045

数学関数

Pythonの数学関数をテーブルで一覧にします。

関数 説明
abs(x) 数値の絶対値を返します
divmod(a, b) 商と余りのタプルを返します
max(iterable, *[, key, default]) 最も大きい要素を返します
min(iterable, *[, key, default]) 最も小さい要素を返します
pow(x, y[, z]) x の y 乗を計算し、z で割った余りを返します
round(number[, ndigits]) 数値を指定した精度で丸めます
sum(iterable, /, start=0) 反復可能なオブジェクトの合計を返します
math.ceil(x) 数値の切り上げを返します
math.floor(x) 数値の切り捨てを返します
math.sqrt(x) 数値の平方根を返します
math.exp(x) e の x 乗を返します
math.log(x[, base]) x の対数を返します (base が省略された場合は自然対数)
math.log10(x) x の底 10 の対数を返します
math.sin(x) x (ラジアン) の正弦を返します
math.cos(x) x (ラジアン) の余弦を返します
math.tan(x) x (ラジアン) の正接を返します
math.asin(x) x の逆正弦を返します
math.acos(x) x の逆余弦を返します
math.atan(x) x の逆正接を返します
math.degrees(x) ラジアンを度に変換します
math.radians(x) 度をラジアンに変換します
math.pi 円周率 π を返します
math.e 自然対数の底 e を返します

ランダム関数(random)

Pythonのランダム関数をテーブルで一覧にします。

関数 説明
random.seed(a=None, version=2) ランダムな数の生成を開始するためのシードを初期化します
random.getstate() 現在の内部状態を返します
random.setstate(state) 内部状態を設定します
random.randbytes(n) nバイトのランダムなバイト列を返します
random.randrange(start, stop[, step]) startからstopまでのランダムな整数を返します
random.randint(a, b) aからbまでのランダムな整数を返します
random.choice(seq) シーケンスからランダムに1つの要素を返します
random.choices(population, weights=None, *, cum_weights=None, k=1) 重み付きランダムサンプリング
random.shuffle(x[, random]) シーケンスをランダムにシャッフルします
random.sample(population, k) 集合からk個のランダムな要素を返します
random.random() 0.0から1.0までのランダムな浮動小数点数を返します
random.uniform(a, b) aからbまでのランダムな浮動小数点数を返します
random.triangular(low, high, mode) 三角分布のランダムな浮動小数点数を返します
random.betavariate(alpha, beta) ベータ分布のランダムな浮動小数点数を返します
random.expovariate(lambd) 指数分布のランダムな浮動小数点数を返します
random.gammavariate(alpha, beta) ガンマ分布のランダムな浮動小数点数を返します
random.gauss(mu, sigma) ガウス分布(正規分布)のランダムな浮動小数点数を返します
random.lognormvariate(mu, sigma) 対数正規分布のランダムな浮動小数点数を返します
random.normalvariate(mu, sigma) 正規分布のランダムな浮動小数点数を返します
random.vonmisesvariate(mu, kappa) フォン・ミーゼス分布のランダムな浮動小数点数を返します
random.paretovariate(alpha) パレート分布のランダムな浮動小数点数を返します
random.weibullvariate(alpha, beta) ワイブル分布のランダムな浮動小数点数を返します

Discussion