PYTHON はじめの一歩 / LESSON 02

入力した数字、
計算できる?

キーボードから受け取った「3」は、すぐに足し算できるのかな? ROBORONと、文字が数字に変わる瞬間を見に行こう。

しくみを見に行く

入力 → 変換 → 計算 | 初めての人向け | 動画なしでも学べます

あおいが入力し、はるとAI先生がりんごの足し算を考え、ROBORONが計算機を持つイラスト
キーボードからの情報は、まず文字として届くよ。
GOAL

このページでできるようになること

  • 01 input() で値を受け取る
  • 02 入力された「数字」が文字列になる理由を説明する
  • 03 int() による型変換(キャスト)で整数に変え、計算に使う
01 / RECEIVE INPUT

キーボードから受け取ろう

前回はプログラムに値を直接書きました。今度は、使う人が入力したものを受け取ります。

あおい

私がりんごの数を決められたら、毎回プログラムを書き換えなくていいんだね!

AI先生

そのとおり。いい考え方だね。 は入力を待って、届いた文字を受け取るんだよ。

1 name = input("名前を入力: ")2 print(name)
「Aさん」と入力したらAさん
入力の案内をするROBORON

ROBORONのチェック!
input() の丸かっこの中の文は、入力をお願いするときに表示される案内だよ。

このプログラムを実際に実行すると、案内が表示され、入力して確定するまで次の行に進みません。

02 / TEXT OR NUMBER?

「3」を数値に変える

input() の結果は、3と入力しても文字列の "3" です。計算の前に値の種類を変えます。この操作をと呼びます。

はる

利用者が「3」と入力した場合も、前回の文字列と同じ扱いになるのでしょうか。

AI先生

そうなんだよ。キーボードから届いたものは、まず文字として受け取る。 を使うと、整数として計算できるようになるんだ。

あおい

へぇ、見た目が3でも、文字の服を着ているんだ! 計算するときに着替えるんだね。

目で見てわかる入力から答えまでの流れ
文字の3を整数に変えて計算する図
図2 入力した "3" は文字列。int("3") で新しい整数値の 3 を得ると、数として足せます。
文字列をそのままつなぐと"3" + "2""32"
数値に変えてから足すとint("3") + 25
文字なら何でも整数になるわけではありません。

int("りんご") は変換できず、Pythonでは が出ます。小数を扱うときは float() を使います。まずは整数で試しましょう。

03 / WATCH IT HAPPEN

「入力→変換→計算」を体験

半角の0〜99を入力して、各段階で何が変わるか見てみよう。文字を入力した場合の様子も確かめられます。

ブラウザ上の学習用シミュレーター

まず「3」で試し、次に別の数や「abc」でも試してみよう。

input() の結果"3"文字列
int() の結果3整数
2を足した結果5整数

「3」は文字として届き、数値の3に変わってから2を足しています。

raw_count = input("りんごは何個?: ")
apple_count = int(raw_count)
print(apple_count + 2)

上の操作はPythonをブラウザで実行するものではありません。Pythonで起こる値の変化を、学習用に再現しています。

04 / CALCULATE

2つの数で計算しよう

両方の入力を整数に変えれば、足し算・引き算・掛け算・割り算ができます。

はる

2つの値を入力するなら、どちらも int() で変換する必要がありますね。

AI先生

その通り。片方だけ文字のままだと、数同士の計算にならないんだよ。式の両側を確かめるのは、いい習慣だね。

+a + b足す
−a - b引く
×a * b掛ける
÷a / b割る
計算を選んで確かめる
Pythonの書き方8 + 2
結果10

足し算では、8と2を合わせて10になります。

first = int(input("1つ目の整数: "))
second = int(input("2つ目の整数: "))
print(first + second)

Pythonでは掛け算に *、割り算に / を使います。/ の結果は、割り切れるときも小数型の値になります。0で割ることはできません。

コーヒーブレイク:余りを知りたいときは?

11個のりんごを3人で同じ数ずつ分けると、1人3個で2個余ります。Pythonなら 11 // 3 が商の 3、11 % 3 が余りの 2 です。お菓子の袋詰めや、順番を繰り返す処理でも活躍します。

05 / YOUR TURN

予想して、確かめよう

答えを選んだあと、理由も読んでみよう。「なぜ?」がわかれば次の問題にも使えます。

問題 1入力直後の値

input() に「4」と入力した直後、その値の種類は?

答えを選ぶと、理由が表示されます。

問題 2変換してから足す

次の結果は何かな?

print(int("4") + 2)

答えを選ぶと、理由が表示されます。

もっと試したい人へ:2つの入力を足す

Pythonを実行できる環境で、上の「1つ目の整数」と「2つ目の整数」のコードを試してみてください。最初に 12、次に 5 と入力したら、表示結果は 17 になります。数を変えて、予想と結果を比べてみましょう。

06 / RUN PYTHON

入力して、計算してみよう

input() で使う値は「入力する値」欄へ先に書いてください。

例題を選ぶ

コードを変えて、結果がどう変わるか試そう。Ctrl+Enterでも実行できます。

この欄に、コードの input() が受け取る値を1行ずつ書きます。

準備できました。

実行結果

実行すると、ここに結果を表示します。

Pythonは閲覧中の端末内で動作します。

AI先生からひとこと

「入力はまず文字 → 必要なら数に変える → 計算する」。この順番がつかめたね。数字そっくりの文字に惑わされなくなったら、もう一歩前進なんだよ。