Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
学ぶ 型変換の基本 | 異なる型間の相互作用
Pythonのデータ型

book型変換の基本

メニューを表示するにはスワイプしてください

型変換は、コアなPython型間で値を比較、計算、表示できるようにする機能。

int型への変換

int(x)は整数を生成。

  • intから: 同じ数値を返す;
  • floatから: ゼロ方向に切り捨て(例:int(2.9)2int(-2.9)-2を返す);
  • 文字列から: 文字列は整数を表す必要がある(空白や符号は許容される)。

有効な変換例

123456
age_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
copy

これらは ValueError を発生させる

12
int("2.5") # ValueError - not an integer string int("42a") # ValueError
copy

float への変換

float(x) は浮動小数点数を生成。

  • 整数や小数、または科学表記の文字列に対応;
  • Python ではカンマは小数点として扱われない。

有効な変換

123
print(float(3)) # 3.0 print(float("2.5")) # 2.5 print(float("1e3")) # 1000.0
copy

これらは ValueError を発生させる

1
float("2,5") # ValueError - use a dot, not a comma
copy

str への変換

str(x) は人間が読みやすい文字列表現を作成。メッセージを構築する際は f-strings の使用を推奨。

123
print(str(42)) # "42" print(str(3.5)) # "3.5" print(f"Ada scored {98} points.")
copy

bool への変換

bool(x) は Python の真偽値規則に従う。

  • 数値: 0False、それ以外の数値は True
  • 文字列: ""(空文字)は False、空でない文字列はすべて True"0""False" も含む)。
12345
print(bool(0)) # False print(bool(7)) # True print(bool("")) # False print(bool("0")) # True print(bool("False")) # True
copy

避けるべきミス

  • int("2.5")ValueError を発生 - まず float() でパースし、その後切り捨てまたは丸め処理;
  • ロケールの習慣: "2,5" は無効 - "2.5" を使用;
  • 入力文字列内のアンダースコア: "1_000" は無効 - 先にアンダースコアを削除: "1_000".replace("_", "");
  • 真偽値の意外性: bool("0")True - 必要に応じて文字列内容を明示的に比較、例: s == "0"

1. どの呼び出しが ValueError を発生させますか?

2. 正しい記述を選択してください。

question mark

どの呼び出しが ValueError を発生させますか?

正しい答えを選んでください

question mark

正しい記述を選択してください。

正しい答えを選んでください

すべて明確でしたか?

どのように改善できますか?

フィードバックありがとうございます!

セクション 4.  1

AIに質問する

expand

AIに質問する

ChatGPT

何でも質問するか、提案された質問の1つを試してチャットを始めてください

セクション 4.  1
some-alt