SONUB ホーム JA English 한국어 日本語 中文 हिन्दी বাংলা اردو Español Português Français Deutsch Русский العربية Bahasa Indonesia Tiếng Việt ไทย Türkçe

通知を有効にする方法

このブラウザーまたはアドレスでは通知を利用できません。対応ブラウザーで安全な接続のSONUBサイトを開いてください。

通知がブロックされている場合は、ブラウザーの設定で許可してください。

  1. アドレスバー横のサイト設定、またはブラウザーのサイト設定を開き、このサイトの通知を許可に変更してください。
  2. 端末の設定でブラウザーの通知を許可し、おやすみモードや集中モードを確認してください。
  3. SONUBに戻ってページを再読み込みし、ベルから通知を有効にしてください。

iPhoneやiPadではSONUBをホーム画面に追加し、そこから開いて通知を許可してください。

Python言語の学習

ブラウザですぐにコーディングするPython 9ステップ

インストールも登録も不要です。コードを入力して少し止まるとすぐに実行されるので、結果を見ながら学べます。Pythonは人工知能を作るときにいちばんよく使われる言語です。

完了したステップ
0/9
進捗率
0%
実行回数
0
  1. 1. コンピューターに話しかけよう print で、言いたいことを画面に表示しよう まだ始めていません
  2. 2. 値に名札をつけよう 変数に値をしまって、また取り出して使おう まだ始めていません
  3. 3. 数で計算しよう 数は引用符なしで、すぐに足し算できます まだ始めていません
  4. 4. 電卓のように計算しよう 足し算・引き算・かけ算・わり算を学ぼう まだ始めていません
  5. 5. もしも? 分かれ道を作ろう if で、場面に合わせてちがう動きをしよう まだ始めていません
  6. 6. 何回もくり返そう for で、同じことを何度もくり返そう まだ始めていません
  7. 7. たくさんの物を箱に入れよう リストで、たくさんの値を1つにまとめよう まだ始めていません
  8. 8. 名札で値を探そう 辞書(ディクショナリ)で、名前と値をペアにしよう まだ始めていません
  9. 9. 自分だけの魔法の呪文を作ろう def で、自分だけの命令(関数)を作ろう まだ始めていません

本物のPythonがブラウザ内(Pyodide)で動きます。最初の一度だけ実行環境をダウンロードし、それ以降は素早く実行されます。さらに深く学びたい場合は人工知能を自分で作る実習室へ進んでみてください。

1 / 9 ステップ

合格!ステップ1を完了しました。次のステップに進みましょうか?

print() — コンピューターに話しかけよう

print で、言いたいことを画面に表示しよう

コンピューターにおしゃべりさせてみましょうか? print() は、コンピューターに画面で文字を「話させる」魔法の命令です。引用符 " " の中に言いたいことを書くと、コンピューターがそのまま表示してくれます。ダブルクォーテーションは「文字はここからここまでだよ」と知らせる囲いなんです。

にっこり笑うノートパソコンの画面から、からっぽのふきだしが出ています。手がキーボードを打っていて、大きな引用符の形をした2本の柱のあいだに、白い紙の帯がかかっています。
print は、引用符のあいだの言葉を、書いたとおりそのままコンピューターに言わせます。

目標 · print() を使って、言いたいことを自由に表示してみましょう。画面に文字が出たら成功です!

こう表示されれば成功!

Hello, Python!

わたしはPythonを勉強しています

(引用符の中に書いた言葉が、そのまま表示されます)

すべてのヒントを開きました

  1. print( ) のかっこの中に、引用符で囲んだ言葉を入れます。

  2. 例:print("わたしはPythonを勉強しています")

  3. 引用符を忘れると、コンピューターはわかってくれません。言葉はいつも "このように" 囲んでください。

2 / 9 ステップ

合格!ステップ2を完了しました。次のステップに進みましょうか?

値に名札をつけよう

に値をしまって、また取り出して使おう

おもちゃ箱に名札をつけるように、値にも名前をつけられます。name = 値 のように書くと、そのあとは名前を呼ぶだけで値が出てきます。このように名札をつけた値を「変数」と呼びます。ここでの = は「等しい」という意味ではありません。「この名前にこの値を入れて」という意味です。

たなに並んだ箱には、それぞれ何も書いていない名札がついていて、りんご・おもちゃの車・リボンが入っています。からっぽだった4つ目の箱に星が落ちてきて、手がその箱の名札を持っています。
変数は、名札のついた箱です。値を入れておき、名前を呼ぶとまた取り出せます。

目標 · 変数 name に、あなたの名前を入れてみましょう。するとコンピューターが、あなたの名前であいさつしてくれます!

こう表示されれば成功!

My name is (あなたが入力した名前)

— 名札に書いた名前が、あいさつにそのまま出てきます

すべてのヒントを開きました

  1. 引用符のあいだに名前を書きます。例:name = "さくら"

  2. = の左側は名札、右側はその中に入れる値です。

  3. name = "はると" のように、引用符の中に名前を書けばOKです。

3 / 9 ステップ

合格!ステップ3を完了しました。次のステップに進みましょうか?

数で計算しよう

数は引用符なしで、すぐに足し算できます

文字は引用符で囲みましたが、数は引用符をつけずにそのまま書きます。するとコンピューターが本物の数だとわかって、計算までしてくれます! 3 + 5 のように足し算ができ、計算した答えを名札()に入れておくこともできます。

目標 · apples と bananas を足した値を total に入れて、果物が全部で8個になるようにしてみましょう。

こう表示されれば成功!

Fruits in total: 8

— apples 3 + bananas 5 = 8!

すべてのヒントを開きました

  1. 足し算には + の記号を使います。

  2. total = apples + bananas のように、名札どうしも足せます。

  3. total = apples + bananas と書くと、total は8になります。

4 / 9 ステップ

合格!ステップ4を完了しました。次のステップに進みましょうか?

電卓のように計算しよう

足し算・引き算・かけ算・わり算を学ぼう

Pythonはかしこい電卓です。足し算は +、引き算は - を使います。かけ算は × のかわりに *、わり算は ÷ のかわりに / を使います。四角い部屋の広さ(面積)は「横 × 縦」で求めますが、コンピューターには width * height と伝えます。

目標 · width と height をかけ算して、部屋の面積が48になるようにしてみましょう。

こう表示されれば成功!

The area of the room is 48

— width 8 × height 6 = 48!

すべてのヒントを開きました

  1. かけ算には × ではなく * の記号を使います。

  2. area = width * height のように、星のマークでかけ算します。

  3. area = width * height と書くと、48になります。

5 / 9 ステップ

合格!ステップ5を完了しました。次のステップに進みましょうか?

if — もしも? 分かれ道を作ろう

if で、場面に合わせてちがう動きをしよう

「雨がふったら、かさを持っていく。そうでなければ、そのまま出かける。」こんなを、コンピューターも作れます。if 条件: は「もし条件が正しければ」、else: は「そうでなければ」という意味です。分かれ道の中の行は、先頭に空白を4つ()入れます。そうするとコンピューターが「この行は分かれ道の中だな」とわかります。

リュックをせおった子どもが分かれ道に立っています。片方の道は雨でかさをさしていて、もう片方の道はお日さまが照っています。
if は条件が正しいときに片方の道へ、else はもう片方の道へ進みます。

目標 · score が60以上なら grade に "pass" を、そうでなければ "fail" を入れてみましょう。(今の点数は85点!)

こう表示されれば成功!

Result: pass

— 85は60より大きいので "pass"!

すべてのヒントを開きました

  1. if score >= 60: と書いて、次の行に空白を4つ入れてから grade = "pass" と書きます。

  2. else: の下の行には、grade = "fail" と書きます(こちらも空白を4つ入れてから)。

  3. if score >= 60:
        grade = "pass"
    else:
        grade = "fail"
6 / 9 ステップ

合格!ステップ6を完了しました。次のステップに進みましょうか?

for — 何回もくり返そう

for で、同じことを何度もくり返そう

1から10まで1つずつ数えて足していくと、手がつかれてしまいますよね? コンピューターはが大得意です。for number in range(1, 11): は「number に 1, 2, 3 … 10 を順番に入れながら、くり返してね」という意味です。(range(1, 11) は1から10までのことです。)くり返しの中で、値を少しずつ足していけます。

おもちゃの汽車が丸い線路を回り、1周するごとにビーズを1つびんに落とします。線路のそばに並んだ石が、何周したかを教えてくれます。
for は、範囲が終わるまで、値を1つずつ変えながら同じことをくり返します。

目標 · 1から10までの数をぜんぶ足して、total が55になるようにしてみましょう。

こう表示されれば成功!

1 to 10 added up: 55

— 1 + 2 + 3 + … + 10 = 55!

すべてのヒントを開きました

  1. くり返しの中では、total = total + number のように、今までの total に number を足し続けます。

  2. total = 0 は、くり返しが始まる前(いちばん上)に1回だけ書きます。

  3. くり返しの中の行を total = total + number に変えると、55になります。

7 / 9 ステップ

合格!ステップ7を完了しました。次のステップに進みましょうか?

list — たくさんの物を箱に入れよう

で、たくさんの値を1つにまとめよう

たくさんのえんぴつを1つの筆箱に入れるように、たくさんの値を1つの箱に入れられます。この箱を「リスト」と呼び、角かっこ [ ] で作ります。箱に新しい物を入れるときは 箱.append("もの") を、中にいくつ入っているか数えるときは len(箱) を使います。

開いた筆箱に色えんぴつが並んでいて、いちばん後ろの空いた場所に新しい色えんぴつがすべりこんでいます。
リストは、たくさんの値を順番どおりにしまいます。append は、新しい値をいちばん後ろに足します。

目標 · fruits の箱に "orange" をもう1つ入れて、果物を全部で4つにしてみましょう。

こう表示されれば成功!

['apple', 'pear', 'grape', 'orange']

Count: 4

— "orange" が入って、4つになりました!

すべてのヒントを開きました

  1. 箱に入れるには、fruits.append("orange") と書きます。

  2. append は、新しい物を箱のいちばん後ろに付け足してくれます。

  3. fruits.append("orange") の1行を足すだけでOKです。

8 / 9 ステップ

合格!ステップ8を完了しました。次のステップに進みましょうか?

dict — 名札で値を探そう

で、名前と値をペアにしよう

国語辞典で言葉を調べると、意味が出てきますよね? Pythonの辞書(ディクショナリ)も同じです。"reading" という名札(キー)を使うと、90という点数(値)が出てきます。波かっこ { } で作り、scores["science"] = 100 のように新しいペアを入れます。名札を使えば、値をとても速く見つけられます。

形のちがう名札がついた小さなロッカーが、壁いっぱいに並んでいます。星の形のかぎを持った手が星のロッカーを開けると、中にトロフィーのカードが入っています。
辞書は、名札(キー)で値をすぐに見つけます。自分のかぎで開くロッカーのようなものです。

目標 · scores に "science": 100 を入れて、3科目(reading・math・science)の平均が90になるように計算してみましょう。

こう表示されれば成功!

{'reading': 90, 'math': 80, 'science': 100}

Average: 90.0

— 3科目の平均は90です!

すべてのヒントを開きました

  1. 新しいペアを入れるには、scores["science"] = 100 と書きます。

  2. 平均は、(90 + 80 + 100) を3でわった値です。

  3. scores["science"] = 100 と書いてから、average = (scores["reading"] + scores["math"] + scores["science"]) / 3 とすればOKです。

9 / 9 ステップ

合格!ステップ9を完了しました。次のステップに進みましょうか?

def — 自分だけの魔法の呪文を作ろう

def で、自分だけの命令()を作ろう

同じことを何度もするなら、自分だけの魔法の呪文を作っておくと便利です。この呪文が「関数」です。def double(x): は「x を材料として受け取る、double という呪文を作ってね」という意味で、return は「この値を返してね」という意味です。一度作れば、double(10) や double(7) のように何回でも使えます。

かわいい魔法の機械の上にあるじょうごに、りんごが1つ入っていきます。横のすべり台からは、りんごが2つ出てきます。
関数は、一度作っておく機械です。何かが入ると、return が結果を返してくれます。

目標 · 数を受け取って、それを2倍にして返す呪文 double を完成させましょう。

こう表示されれば成功!

20

14

— double(10) は20を、double(7) は14を返します!

すべてのヒントを開きました

  1. 2倍は x * 2 です。

  2. 返したい値は、return のうしろに書きます。

  3. return x * 2 に変えると、呪文の完成です。

Python実行環境を準備中…

Pythonコード

実行結果


                        

あと少し!

エラーが出たら

SyntaxError: unterminated string literal は、引用符が1つ足りないという意味です。始まりの " があれば、終わりの " も必要です。print("Hello") のようにね。print は小文字で書きます。Print と書くと NameError になります。

もう一歩先へ

2行を表示してみましょう。それから print("Ha" * 3) を実行する前に、何が出るか予想してみてください。

エラーが出たら

NameError: name 'nme' is not defined は、Pythonがその名前を知らないという意味です。たいていは打ちまちがいか、名前を作る行より前にその名前を使ったときです。名前は、大文字・小文字までぴったり同じでなければいけません。

もう一歩先へ

変数をもう1つ作って age = 10 を入れ、print(name, age) で両方を表示してみましょう。

エラーが出たら

"3" + 5 は TypeError になります。引用符の中の文字と数は、足し算できないからです。引用符を取るか、int("3") で文字を数に変えましょう。

もう一歩先へ

apples = 3 を apples = 10 に変えて、もう一度実行してみましょう。合計は自分で書いたのではなく計算したものなので、ひとりでに変わります。

エラーが出たら

8 x 6 や 8 × 6 と書くと SyntaxError になります。Pythonのかけ算は * だからです。それから、/ はいつも小数点のついた数になります。7 / 2 は 3.5、8 / 2 でも 4.0 です。整数の答えがほしいときは // を使います。

もう一歩先へ

** でべき乗をしてみましょう。2 ** 10 は、2を10回かけ合わせます。

エラーが出たら

よくあるまちがいは2つです。if score >= 60: の最後のコロン(:)を忘れること、そして分かれ道の中の行に空白を4つ入れずに IndentationError になることです。覚えておきましょう。= は値を入れる記号、== は「同じかな?」とたずねる記号です。

もう一歩先へ

elif score >= 90: を else: の前に足して、とても高い点数には別のメッセージを出しましょう。

エラーが出たら

range(1, 10) は9で止まります。終わりの数は入らないからです。1から10までなら range(1, 11) と書きます。それから、くり返しの中で合計を0にすると、毎回最初からやり直しになります。合計を0にするのは、くり返しの前に1回だけです。

もう一歩先へ

range(2, 11, 2) で偶数だけを足してみましょう。2, 4, 6, 8, 10 と数えます。

エラーが出たら

番号は0から数えるので、最初のものは fruits[0] です。3つしか入っていないリストで fruits[3] を探すと、IndexError: list index out of range になります。

もう一歩先へ

fruits.remove("pear") で1つ取り出して、もう一度リストを表示してみましょう。

エラーが出たら

ない名札(キー)を探すと、たとえば scores["music"] は KeyError になります。つづりを確かめるか、scores.get("music") を使いましょう。エラーのかわりに None(「値がない」という意味)が返ってきます。

もう一歩先へ

for subject, score in scores.items(): と、その中の print 1行で、すべてのペアを表示してみましょう。

エラーが出たら

return を忘れると、関数は None を返すので、print(double(10)) は None と表示します。それに、関数はかっこをつけて呼んだときだけ動きます。double(10) のように書きます。double だけでは動きません。

もう一歩先へ

名前を受け取って、その名前が入ったあいさつを返す def greet(name): を作り、自分の名前で呼んでみましょう。