Py初めてのPython

Day 1変数・型・入出力(データの器)

基本の型(str/int/float/bool)と型を意識する理由

文字列・整数・小数・真偽値という4つの基本の型と、その違いを意識する理由を学ぶ。

データには「型(かた)」がある

同じ「箱」に入るデータでも、中身が文字なのか数値なのかで扱いが変わります。この「データの種類」を型と呼びます。まずは4つの基本の型を押さえます。

  • str(文字列): 文字の並び。"こんにちは" や "123" のようにクォートで囲む
  • int(整数): 小数点のない数。100 や -5 など
  • float(浮動小数点数): 小数点のある数。3.14 や 0.5 など
  • bool(真偽値): True か False の2つだけ。条件が成り立つかを表す
PYTHON
name = "田中"      # str
age = 30           # int
height = 170.5     # float
is_member = True   # bool
それぞれ違う型のデータを変数に入れている

type() で型を確かめられる

ある変数の中身がどの型かは type() という命令で確認できます。困ったときに「今この変数は何型なのか」を調べる基本の道具です。

PYTHON
print(type(30))       # <class 'int'>
print(type(3.14))     # <class 'float'>
print(type("30"))     # <class 'str'>
print(type(True))     # <class 'bool'>
type() で型を表示する

なぜ型を意識するのか

型が違うと同じ記号でも動きが変わるからです。数値の 1 + 2 は 3 ですが、文字列の "1" + "2" は "12"(連結)になります。見た目が同じ「1」でも、型によって結果が変わることを知らないとバグの原因になります。

文字列同士

クォートで囲むと文字として連結される

PYTHON
print("1" + "2")  # 12

整数同士

クォートなしなら数値として足し算される

PYTHON
print(1 + 2)  # 3

型が合わないとエラーになる

文字列と数値をそのまま足そうとすると、Python は「種類が違うので計算できない」とエラーを出します。これは間違いを早めに教えてくれる仕組みでもあります。

PYTHON
print("年齢:" + 30)
# TypeError: can only concatenate str (not "int") to str
文字列と整数はそのまま足せない

よくある落とし穴

input() で受け取った値は数値に見えても必ず str(文字列)です。そのまま計算すると意図しない連結やエラーになります。数値として使うときは int() や float() で変換します(次のレッスンで扱います)。

AIにはこう聞く

型に関するエラーが出たら「このTypeErrorの意味と、どの型をどう変換すれば直るか教えて」とエラー文ごと貼って聞きます。AIの提案を試したら、type() で本当に狙った型になったか自分で確認します。

読んでも腑に落ちない所は、AIに噛み砕いてもらいましょう。

理解度チェック

答えられれば、面接で説明できる状態に一歩近づきます。

Q1

print("1" + "2") の実行結果はどれですか。

Q2

3.14 の型はどれですか。

Q3

なぜプログラミングでは「型」を意識する必要があるのか説明してください。

記述式です。まず自分の言葉で答えを考えてから、模範解答を開いて自己採点してください。