Python を動かしてみよう
まずは Python を「とても賢い電卓」として使ってみます。インストールしなくても、ブラウザだけで動かせる Google Colaboratory を使うのがいちばん簡単です。
このページのゴール
- Google Colaboratory でノートブックを作り、コードを実行できる
- Python で四則計算・累乗ができ、print で結果を表示できる
- エラーが出ても、メッセージを読んで直せる
Python を動かしてみよう……また計算? 正直、見るだけで頭がくらくらする。
計算自体はできそう。でも『なんでこれが AI につながるの?』って聞かれると、まだ答えられない。
気持ちは分かる。ここでは紙で一歩だけ確かめて、あとのモデルのどこで使うかを一緒に見よう。Google Colab で電卓から始める。
方法1:Google Colaboratory(おすすめ)
Google Colaboratory(略して Colab)は、Google が用意している無料のサービスです。ブラウザの中で Python を動かせて、NumPy と Matplotlib も最初から使えます。Google アカウントが必要なので、中学生は家の人といっしょに準備してください。
- ブラウザで
colab.research.google.comを開き、Google アカウントでログインする。 - 「ノートブックを新規作成」を押す。
- 灰色の四角(コードセル)に、コードを書く。
- Shift + Enter を押すか、左の ▶ ボタンを押すと実行され、すぐ下に結果が出る。
- 「+ コード」で新しいセルを追加できる。ノートブックは自分の Google ドライブに保存される。
方法2:自分のパソコンに入れる
自分のパソコンで動かしたい人は、python.org から Python 3 をインストールし、ターミナル(コマンドプロンプト)で次のように入力して NumPy と Matplotlib を入れます。
pip install numpy matplotlib
この本のコードは、Python 3.10 以上、NumPy 2 系、Matplotlib 3 系で動作を確かめています。
電卓として使う
次のコードをセルに書いて、実行してみましょう。print( ) は、かっこの中身を画面に表示する命令です。# から行の終わりまではコメントといって、Python は読み飛ばします。人間へのメモです。
print("こんにちは、AI") # 文字は " " でかこむ
print(3 + 4) # 足し算
print(7 - 10) # 引き算
print(6 * 7) # かけ算は *
print(10 / 4) # わり算は /
print(2 ** 10) # 累乗は **
print((-3) ** 2) # マイナスの2乗はかっこをつける
こんにちは、AI 7 -3 42 2.5 1024 9
| 算数 | Python | 例 | 結果 |
|---|---|---|---|
| + | + | 3 + 4 | 7 |
| − | - | 7 - 10 | -3 |
| × | * | 6 * 7 | 42 |
| ÷ | / | 10 / 4 | 2.5 |
| 累乗 | ** | 2 ** 10 | 1024 |
| わり算の商 | // | 10 // 4 | 2 |
| わり算のあまり | % | 10 % 4 | 2 |
計算の順番は数学と同じで、かっこ → 累乗 → かけ算・わり算 → 足し算・引き算 です。
print(0.1 + 0.2)
0.30000000000000004
コンピュータは内部で数を2進数で記録しているので、0.1 のような小数をぴったりには表せません。そのため、ごくわずかな誤差が出ます。これはまちがいではなく、どのコンピュータでも起こることです。AI の計算では、この程度の誤差は問題になりません。
エラーはこわくない
プログラムに書きまちがいがあると、エラーが表示されます。たとえば print を prnt とまちがえると、次のようなメッセージが出ます。
NameError: name 'prnt' is not defined
「prnt という名前は定義されていません」という意味です。エラーメッセージのいちばん下の行に、原因が書いてあります。英語でも、知らない単語を1つ調べれば、だいたい意味が分かります。
| エラー名 | よくある原因 |
|---|---|
NameError | 名前のつづりまちがい。まだ作っていない変数を使った。 |
SyntaxError | かっこや " の閉じ忘れ。全角のかっこ( )や全角スペースを使った。 |
IndentationError | 行の先頭の空白(字下げ)がそろっていない。 |
ZeroDivisionError | 0 でわった。 |
プロのプログラマーも、毎日たくさんのエラーを出しています。エラーが出たら、メッセージの最後の行を読んで、指された行を見直しましょう。日本語を入力した後に、かっこやスペースが全角のままになっていないかも確かめてください。
一文でいうと……『Python を動かしてみよう』は、あとで AI の計算を紙で追うための土台、かな。
その言い方でいい。次のページでも、同じように『一文でいうと何か』を残していこう。
確認問題
次のコードを実行すると、何が表示されますか。実際に動かして確かめましょう。
print(6 * 3 + 47) print(17 // 5, 17 % 5) print(-2 ** 2)
65 3 2 -4
print のかっこにカンマで区切って2つ書くと、空白をはさんで並べて表示します。3行目は 2 ** 2 が先に計算されるので −4 です(2-3 と同じ)。
1-5 で作ったモデル「点数 = 6 × 勉強時間 + 47」で、勉強時間が 2.5 時間のときの点数を Python で計算するコードを書きましょう。
print(6 * 2.5 + 47)
62.0
小数が入った計算の答えは、62.0 のように小数で表示されます。