Caution
お使いのブラウザはJavaScriptが実行できない状態になっております。
当サイトはWebプログラミングの情報サイトの為、
JavaScriptが実行できない環境では正しいコンテンツが提供出来ません。
JavaScriptが実行可能な状態でご閲覧頂くようお願い申し上げます。
int() / float() / str() / bool()
値を別の型に変換する基本的な組み込み関数です。ユーザー入力の処理や演算の前処理として頻繁に使われます。
構文
# 値を整数に変換します。基数(進数)を指定することもできます。 int(値, 基数=10) # 値を浮動小数点数に変換します。 float(値) # 値を文字列に変換します。 str(値) # 値を真偽値(True または False)に変換します。 bool(値) # 値を複素数に変換します。 complex(実数部, 虚数部=0) # 値をバイト列に変換します。 bytes(値, エンコーディング)
関数一覧
| 関数 | 概要 |
|---|---|
| int(x, base=10) | 整数・浮動小数点数・文字列を整数に変換します。文字列の場合は基数(2〜36)を指定できます。 |
| float(x) | 整数・文字列を浮動小数点数に変換します。'inf' や 'nan' の文字列も変換できます。 |
| str(obj) | 任意のオブジェクトを人間が読みやすい文字列表現に変換します。 |
| bool(x) | 値を True か False に変換します。0・空文字列・None・空のリストなどは False になります。 |
| complex(real, imag=0) | 実数部と虚数部から複素数を生成します。文字列からも変換できます。 |
| bytes(source, encoding) | 文字列をバイト列に変換します。文字列の場合はエンコーディング(例:'utf-8')の指定が必要です。 |
サンプルコード
# int() で様々な値を整数に変換します。
print(int(3.9)) # 3(小数点以下は切り捨て)
print(int("42")) # 42(文字列から整数へ)
print(int("FF", 16)) # 255(16進数の文字列を整数に)
print(int("1010", 2)) # 10(2進数の文字列を整数に)
print(int(True)) # 1(True は 1 に変換されます)
# float() で浮動小数点数に変換します。
print(float(10)) # 10.0
print(float("3.14")) # 3.14
print(float("inf")) # inf(無限大)
print(float("nan")) # nan(非数)
# str() で文字列に変換します。
print(str(100)) # '100'
print(str(3.14)) # '3.14'
print(str(True)) # 'True'
print(str([1, 2, 3])) # '[1, 2, 3]'
# bool() でどの値が False になるか確認します。
print(bool(0)) # False
print(bool("")) # False(空文字列)
print(bool([])) # False(空リスト)
print(bool(None)) # False
print(bool(1)) # True
print(bool("a")) # True
print(bool([0])) # True(0 を含む空でないリスト)
# complex() で複素数を生成します。
c = complex(3, 4)
print(c) # (3+4j)
print(c.real) # 3.0(実数部)
print(c.imag) # 4.0(虚数部)
# bytes() で文字列をバイト列に変換します。
b = bytes("こんにちは", "utf-8")
print(b) # UTF-8 のバイト列が出力されます。
print(len(b)) # 15(1文字が3バイトなので 5×3=15)
概要
Pythonは動的型付け言語ですが、型変換は明示的に行う必要があります。特に『input()』で受け取った値は常に文字列なので、計算に使う前に『int()』や『float()』への変換が必要です。
『int()』で浮動小数点数を変換すると小数点以下は切り捨て(ゼロ方向への丸め)になります。四捨五入したい場合は組み込みの『round()』関数を使ってください。
『bool()』の変換ルール(Falsy値とTruthy値)はPythonの条件式で重要な概念です。False扱いになる値は『0』『0.0』『""』(空文字列)『[]』(空リスト)『{}』(空辞書)『()』(空タプル)『set()』(空セット)『None』です。これらに当てはまらない値はすべて True 扱いになります。型の確認については『len() / type() / id()』を参照してください。
記事の間違いや著作権の侵害等ございましたらお手数ですがこちらまでご連絡頂ければ幸いです。