【Python】第1章第4回:数値型(int, float, complex)の詳細
本記事では、Pythonで使用される数値型(int, float, complex)について詳しく解説します。それぞれの特性を理解し、適切に使い分けられるようになりましょう。
0. 記事の概要
この記事を読むメリット
- Pythonの数値型を理解:整数、小数、複素数の使い方を学べます。
- 演算の基本を習得:数値型を使った基本的な演算の方法を理解できます。
- 実践的な例を通じて応用力を強化:実際のコード例を通じて応用力を養えます。
この記事で学べること
- Pythonの数値型(int, float, complex)の特徴
- 基本的な算術演算とその実行方法
- 数値型を利用した応用例
1. 数値型(int, float, complex)の基本
1.1 整数型(int)
整数型(int
)は、小数点を含まない整数値を扱うデータ型です。
# 整数型の例
a = 10
b = -5
print(a + b) # 結果: 5
整数型は四則演算(加減乗除)を簡単に行うことができます。
1.2 浮動小数点型(float)
浮動小数点型(float
)は、小数点を含む数値を扱います。
# 浮動小数点型の例
pi = 3.14159
radius = 2.5
area = pi * (radius ** 2)
print(area) # 結果: 19.6349375
浮動小数点型は、数学的な計算や物理的な値を扱う場合に使用されます。
1.3 複素数型(complex)
複素数型(complex
)は、実数部と虚数部を持つ数値を表します。虚数はj
を使って表記します。
# 複素数型の例
z = 1 + 2j
print(z.real) # 実数部: 1.0
print(z.imag) # 虚数部: 2.0
複素数は主に科学技術計算や信号処理で使用されます。
2. 数値型の基本的な操作
2.1 算術演算
Pythonでは、数値型を使ったさまざまな算術演算が可能です。
# 基本的な算術演算
a = 15
b = 4
print(a + b) # 加算: 19
print(a - b) # 減算: 11
print(a * b) # 乗算: 60
print(a / b) # 除算: 3.75
print(a // b) # 整数除算: 3
print(a % b) # 余り: 3
print(a ** b) # 累乗: 50625
これらの演算を組み合わせることで複雑な計算も行えます。
2.2 型変換
Pythonでは、明示的に型を変換することが可能です。
# 型変換の例
x = 10 # 整数型
y = float(x) # 浮動小数点型に変換
print(y) # 結果: 10.0
この機能を使って、必要に応じたデータ型の変換ができます。
3. 応用例:数値型を活用したプログラム
3.1 円の面積と周囲長の計算
数値型を活用して、円の面積と周囲長を計算するプログラムを作成します。
# 円の計算プログラム
import math
radius = float(input("半径を入力してください: "))
area = math.pi * (radius ** 2)
circumference = 2 * math.pi * radius
print(f"円の面積: {area:.2f}")
print(f"円の周囲長: {circumference:.2f}")
動作解説
- ライブラリのインポート:
math
ライブラリを使って円周率(pi
)を取得。 - 半径の入力: ユーザーから半径を取得(浮動小数点型に変換)。
- 面積と周囲長の計算: 面積と周囲長をそれぞれ計算し、結果を出力。
4. 練習問題
以下の課題に挑戦してみましょう。
- 2つの数値を入力し、それらの合計、差、積を計算して出力するプログラムを作成してください。
- 複素数型を使い、2つの複素数の和と積を計算するプログラムを作成してください。
5. 練習問題の解答と解説
問1の解答例
# 2つの数値の演算
x = float(input("1つ目の数値を入力してください: "))
y = float(input("2つ目の数値を入力してください: "))
print(f"合計: {x + y}")
print(f"差: {x - y}")
print(f"積: {x * y}")
問2の解答例
# 複素数の計算
z1 = 1 + 2j
z2 = 2 + 3j
print(f"和: {z1 + z2}")
print(f"積: {z1 * z2}")
6. まとめ
Pythonの数値型(int, float, complex)の基本と応用例を学びました。これを理解することで、より高度な計算や処理に挑戦できるようになります。