型変換の基本
メニューを表示するにはスワイプしてください
型変換は、コアなPython型間で値を比較、計算、表示できるようにする機能。
int型への変換
int(x)は整数を生成。
- intから: 同じ数値を返す;
- floatから: ゼロ方向に切り捨て(例:
int(2.9)は2、int(-2.9)は-2を返す); - 文字列から: 文字列は整数を表す必要がある(空白や符号は許容される)。
有効な変換例
123456age_input = " 42 " print(int(age_input)) # 42 print(int(2.9)) # 2 print(int(-2.9)) # -2 print(int("7")) # 7 print(int(" -15 ")) # -15
これらは ValueError を発生させる
12int("2.5") # ValueError - not an integer string int("42a") # ValueError
float への変換
float(x) は浮動小数点数を生成。
- 整数や小数、または科学表記の文字列に対応;
- Python ではカンマは小数点として扱われない。
有効な変換
123print(float(3)) # 3.0 print(float("2.5")) # 2.5 print(float("1e3")) # 1000.0
これらは ValueError を発生させる
1float("2,5") # ValueError - use a dot, not a comma
str への変換
str(x) は人間が読みやすい文字列表現を作成。メッセージを構築する際は f-strings の使用を推奨。
123print(str(42)) # "42" print(str(3.5)) # "3.5" print(f"Ada scored {98} points.")
bool への変換
bool(x) は Python の真偽値規則に従う。
- 数値:
0はFalse、それ以外の数値はTrue; - 文字列:
""(空文字)はFalse、空でない文字列はすべてTrue("0"や"False"も含む)。
12345print(bool(0)) # False print(bool(7)) # True print(bool("")) # False print(bool("0")) # True print(bool("False")) # True
避けるべきミス
int("2.5")はValueErrorを発生 - まずfloat()でパースし、その後切り捨てまたは丸め処理;- ロケールの習慣:
"2,5"は無効 -"2.5"を使用; - 入力文字列内のアンダースコア:
"1_000"は無効 - 先にアンダースコアを削除:"1_000".replace("_", ""); - 真偽値の意外性:
bool("0")はTrue- 必要に応じて文字列内容を明示的に比較、例:s == "0"。
1. どの呼び出しが ValueError を発生させますか?
2. 正しい記述を選択してください。
すべて明確でしたか?
フィードバックありがとうございます!
セクション 4. 章 1
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください
セクション 4. 章 1