モジュールのレッスン (4/4)
型変換
Python は 厳密に型指定されています。
そう言ってください。ある型から別の型に移動するには、コンストラクター関数を使用します。
int()、float()、str()、bool()、list()、tuple()、set()。
int("42") # 42
float("3.14") # 3.14
str(42) # '42'
list("abc") # ['a', 'b', 'c']
tuple([1, 2]) # (1, 2)
set([1, 1, 2]) # {1, 2}int() 文字列付き
int("42") は機能します。 int("42.5") は ValueError を発生させます。 10 進数の文字列の場合、
最初に float を通過します: int(float("42.5")) → 42 (切り捨てられます。
丸い)。
int("42") # 42
int(" 42 ") # 42 (strip automatico degli spazi)
int("42.5") # ValueError
int(float("42.5")) # 42
int("ff", 16) # 255 (base esplicita)float() 文字列付き
10 進数および科学表記を受け入れます。
float("3.14") # 3.14
float("1e3") # 1000.0
float("inf") # inf
float("nan") # nanstr(): 「フレンドリーな」変換
str(x) は内部で x.__str__() を呼び出して「人間」の表現を取得します。
「デバッガ」表現には repr(x) もあります。
明示的 (文字列などの引用符付き)。
str(3.14) # '3.14'
str([1, 2]) # '[1, 2]'
str(True) # 'True'bool() と真実性
bool(x) は、Python の falsy 値の場合にのみ False を返します。
False、None- ゼロの数値:
0、0.0 - 空のコンテナ:
""、[]、()、{}、set()
それ以外はすべて真実です。
bool(0) # False
bool("") # False
bool([]) # False
bool("0") # True ! (stringa non vuota)
bool([0]) # True ! (lista non vuota, anche se contiene 0)パターン: 安全な入力解析
testo = input("età: ")
try:
eta = int(testo)
except ValueError:
print(f"non è un numero: {testo!r}")
eta = Noneブール評価(真偽性)
Python では、すべてのオブジェクトに暗黙の真理値があります。 bool(...) 関数を使用して、任意のオブジェクトのブール値を確認できます。空のコレクション (""、[]、{}、set()) およびゼロ値 (0、0.0) は常に False と評価されます。他のすべてのオブジェクトは True として評価されます。
試してみてください
`a = '10'` および `b = '32'` (文字列) とすると、それらの INTEGER 合計として `total` を計算します。 「合計」を評価します。
ヒントを表示
int(a) + int(b)、それ以外の場合は文字列を連結します。
3 回の試行後に解決策が利用可能になります
復習演習
リスト `values = ['', 'x', 0, None, 1, []]` を指定すると、bool() を使用して真実の要素のみを含む `truthy` を構築します。 「真実」を評価する。
ヒントを表示
フィルター bool(v) (または単に 'if v') を使用したリストの内包表記。
3 回の試行後に解決策が利用可能になります
追加の課題
文字列のリスト \`string_numbers = ["1", "2", "3"]\` を指定すると、\`int()\` を使用して各要素を整数に変換し、それらを合計して値 \`6\` を取得します。合計を \`sum_val\` に保存し、評価します。
ヒントを表示
インデックスによって要素にアクセスします。例: int(string_numbers[0]) を計算し、それらを合計します。
3 回の試行後に解決策が利用可能になります