どうも、こんにちは、だんなです。
2020年、プログラミング教育が小学校で必修化されることもあり、 本業システムエンジニアのだんなが息子に簡単なプログラミング(Python:パイソン)を教えてみる入門講座の第12回になります。
前回に引き続き、小学生の息子が実際にプログラミングを実践してみて、疑問に思った感じたところをブログ記事に残していきますので、今から子供にプログラミングを教えたい、親子で一緒に学んでみたい方なら誰にでもお勧めの入門教材になると思います。
第8回以降は「標準入力」という機能を使います。
理解が進んでいない方は、先にコチラをご覧ください。
第8回:いっぱいの「い」を「お」に変えてみよう
第9回:横書きを縦書きやナナメ書きにしてみよう
第10回:俳句や川柳を5・7・5で改行させよう
第11回:「あ」の付く都道府県を一瞬で答えよう
- 簡単なプログラミングを体験してみたい方
- 今までプログラミングをやったことのない初心者の方
- プログラミング言語Python[パイソン]を使って簡単なプログラムを実行
- 画面やキーボード操作がわかりにくい場合は、Youtube動画を見て確認
- 疑問点があれば、コメントやtwitterに書いてくれればお答えします
- このサイト(あゆすた)をパソコンで見ている方ならそのまま実行可能
- ブラウザだけで実行可能なので、難しいインストール作業などの準備は不要
本業のシステムエンジニアの皆さんがプログラミングをする場合には、いろいろ面倒な準備が必要だったりするのですが、このプログラミング入門講座では「簡単に」「無料で」プログラム実行できます。
実行手順は以下の4点となります。
入門教材① プログラミングを実行する画面を開く
入門教材② 標準入力エリアに入力データを書く
入門教材③ プログラムを書く(第12回はスプラトゥーンのブキを絞りこむプログラムです)
入門教材④ 実行ボタンを押す
それでは、さっそく進めていきましょう!
スプラトゥーンとの出会い
4~5年前のことだったでしょうか、我が家にWiiU版のスプラトゥーンとかいうゲームが届いたのは。
私だんな君は、イカのキャラクターがローラーを使って床にペンキを塗るだけのゲームとばかり思っていました。
一方で、むすこ君はこのスプラトゥーンにがっつりハマって遊びつくしました。
私はこのゲームのルールがよくわからず、ローラーでインクを塗っては敵のイカに殺され(キルされ)、塗っては殺され、 塗っては殺され、 あ~!やられた~!と言っているだけの大変平和な日々でした。
WiiU版のスプラトゥーンはネットワークで親子2人での対戦が出来なかったので、その平和な日々が壊れることはありませんでした。
そして、その数年後、運命のゲームが発売されます。
Nintendo Switch版、スプラトゥーン2です。
むすこ君はSwitchと一緒にスプラ2を買い、当然のごとくこのゲームにハマって遊びつくしました。
一方、私だんな君は、スプラ2は2~8人で対戦が出来るという情報を聞いて自分用のSwitchを買ってしまいます。
そして、ついに自分の実力を思い知らされるのです。
むすこ君と対戦モードで戦うと、キル、キル、キル、キル・・・まったく歯が立たない。
むすこ君イカからお父さんイカは何回キルされたことでしょう・・・。
スプラトゥーン2は、むすこ君がお父さんを倒してスッキリするゲームと化し、お父さんのストレス半端な~い!、な毎日が続きました。
くやしい・・・!!!
そうか、スプラって敵のイカをキルするゲームでもあったんだ!
そう気づいた私だんな君は、タイガーショットを会得するために沖縄の海へ特訓の旅に出た日向小次郎のごとく、スプラの特訓の旅に出ます。
むすこ君と対戦することを拒み、特訓すること約1年・・・
猛練習の末、すさまじい実力を身に付けた私だんな君。
ついに、むすこ君と対戦して、
と言わせるまでに至ります。
我が家とスプラトゥーンの出会いのお話でした。
「ちくしょおおお~~っ!!」
って言ってたのは、お父さんだったのに!!
スプラトゥーンのブキのCSVデータ
今回の入力データも、かなり量が多いのでお父さんが用意するね。
むすこ君は、それをコピー・貼り付けしてくれればいいから。
わかったよ、お父さん。
な、な、何か怒っているのかな??
今回は、ブキの種別やスペシャル、サブや射程、攻撃力などをカンマ(,)で区切ったCSVデータになってるよ。
001,シューター ,スプラシューター ,スーパーチャクチ ,クイックボム , 50, 45, 60
002,シューター ,スプラシューターコラボ ,ジェットパック ,スプラッシュボム , 50, 45, 60
003,シューター ,ヒーローシューターレプリカ ,スーパーチャクチ ,クイックボム , 50, 45, 60
004,シューター ,オクタシューターレプリカ ,ジェットパック ,スプラッシュボム , 50, 45, 60
005,シューター ,スプラシューターベッチュー ,マルチミサイル ,キューバンボム , 50, 45, 60
006,シューター ,プライムシューター ,アメフラシ ,ポイントセンサー , 70, 60, 30
007,シューター ,プライムシューターコラボ ,バブルランチャー ,キューバンボム , 70, 60, 30
008,シューター ,プライムシューターベッチュー ,ナイスダマ ,スプラッシュボム , 70, 60, 30
009,シューター ,シャープマーカー ,ジェットパック ,ポイズンミスト , 42, 22, 75
010,シューター ,シャープマーカーネオ ,キューバンボムピッチャー ,クイックボム , 42, 22, 75
011,シューター ,わかばシューター ,インクアーマー ,スプラッシュボム , 35, 22, 75
012,シューター ,もみじシューター ,アメフラシ ,ロボットボム , 35, 22, 75
013,シューター ,おちばシューター ,バブルランチャー ,トーピード , 35, 22, 75
014,シューター ,プロモデラーMG ,カーリングボムピッチャー ,キューバンボム , 35, 10, 90
015,シューター ,プロモデラーRG ,イカスフィア ,スプリンクラー , 35, 10, 90
016,シューター ,プロモデラーPG ,ナイスダマ ,クイックボム , 35, 10, 90
017,シューター ,N-ZAP85 ,インクアーマー ,キューバンボム , 50, 22, 75
018,シューター ,N-ZAP89 ,マルチミサイル ,ロボットボム , 50, 22, 75
019,シューター ,N-ZAP83 ,アメフラシ ,スプリンクラー , 50, 22, 75
020,シューター ,.52ガロン ,イカスフィア ,ポイントセンサー , 55, 75, 25
021,シューター ,.52ガロンデコ ,ハイパープレッサー ,カーリングボム , 55, 75, 25
022,シューター ,.52ガロンベッチュー ,ナイスダマ ,スプラッシュシールド , 55, 75, 25
023,シューター ,ジェットスイーパー ,マルチミサイル ,ポイズンミスト , 82, 35, 30
024,シューター ,ジェットスイーパーカスタム ,ハイパープレッサー ,クイックボム , 82, 35, 30
025,シューター ,L3リールガン ,イカスフィア ,カーリングボム , 62, 25, 65
026,シューター ,L3リールガンD ,ジェットパック ,クイックボム , 62, 25, 65
027,シューター ,L3リールガンベッチュー ,ウルトラハンコ ,スプラッシュシールド , 62, 25, 65
028,シューター ,.96ガロン ,インクアーマー ,スプリンクラー , 70, 80, 10
029,シューター ,.96ガロンデコ ,スーパーチャクチ ,スプラッシュシールド , 70, 80, 10
030,シューター ,H3リールガン ,マルチミサイル ,ポイントセンサー , 70, 58, 30
031,シューター ,H3リールガンD ,インクアーマー ,キューバンボム , 70, 58, 30
032,シューター ,H3リールガンチェリー ,バブルランチャー ,スプラッシュシールド , 70, 58, 30
033,シューター ,ボールドマーカー ,スーパーチャクチ ,カーリングボム , 12, 52, 75
034,シューター ,ボールドマーカーネオ ,マルチミサイル ,ジャンプビーコン , 12, 52, 75
035,シューター ,ボールドマーカー7 ,ウルトラハンコ ,スプラッシュボム , 12, 52, 75
036,シューター ,ボトルガイザー ,ハイパープレッサー ,スプラッシュシールド , 77, 52, 29
037,シューター ,ボトルガイザーフォイル ,バブルランチャー ,スプラッシュボム , 77, 52, 29
038,ブラスター ,ホットブラスター ,スーパーチャクチ ,ポイズンミスト , 27, 70, 20
039,ブラスター ,ホットブラスターカスタム ,ジェットパック ,ロボットボム , 27, 70, 20
040,ブラスター ,ヒーローブラスターレプリカ ,スーパーチャクチ ,ポイズンミスト , 27, 70, 20
041,ブラスター ,ラピッドブラスター ,スプラッシュボムピッチャー ,トラップ , 62, 35, 40
042,ブラスター ,ラピッドブラスターデコ ,ジェットパック ,キューバンボム , 62, 35, 40
043,ブラスター ,ラピッドブラスターベッチュー ,イカスフィア ,トーピード , 62, 35, 40
044,ブラスター ,ノヴァブラスター ,イカスフィア ,スプラッシュボム , 9, 70, 30
045,ブラスター ,ノヴァブラスターネオ ,キューバンボムピッチャー ,トラップ , 9, 70, 30
046,ブラスター ,ノヴァブラスターベッチュー ,アメフラシ ,タンサンボム , 9, 70, 30
047,ブラスター ,クラッシュブラスター ,ハイパープレッサー ,スプラッシュボム , 21, 24, 65
048,ブラスター ,クラッシュブラスターネオ ,マルチミサイル ,カーリングボム , 21, 24, 65
049,ブラスター ,Rブラスターエリート ,アメフラシ ,ポイズンミスト , 72, 35, 30
050,ブラスター ,Rブラスターエリートデコ ,インクアーマー ,スプラッシュシールド , 72, 35, 30
051,ブラスター ,ロングブラスター ,アメフラシ ,キューバンボム , 56, 70, 10
052,ブラスター ,ロングブラスターカスタム ,バブルランチャー ,カーリングボム , 56, 70, 10
053,ブラスター ,ロングブラスターネクロ ,マルチミサイル ,クイックボム , 56, 70, 10
054,ローラー ,スプラローラー ,スーパーチャクチ ,カーリングボム , 48, 45, 55
055,ローラー ,スプラローラーコラボ ,イカスフィア ,ジャンプビーコン , 48, 45, 55
056,ローラー ,ヒーローローラーレプリカ ,スーパーチャクチ ,カーリングボム , 48, 45, 55
057,ローラー ,スプラローラーベッチュー ,バブルランチャー ,スプラッシュボム , 48, 45, 55
058,ローラー ,ダイナモローラー ,ハイパープレッサー ,トラップ , 76, 25, 20
059,ローラー ,ダイナモローラーテスラ ,インクアーマー ,スプラッシュボム , 76, 25, 20
060,ローラー ,ダイナモローラーベッチュー ,ナイスダマ ,スプリンクラー , 76, 25, 20
061,ローラー ,カーボンローラー ,アメフラシ ,ロボットボム , 20, 63, 65
062,ローラー ,カーボンローラーデコ ,ロボボムピッチャー ,クイックボム , 20, 63, 65
063,ローラー ,ヴァリアブルローラー ,スプラッシュボムピッチャー ,スプラッシュシールド , 58, 45, 45
064,ローラー ,ヴァリアブルローラーフォイル ,マルチミサイル ,キューバンボム , 58, 45, 45
065,ブラシ ,ホクサイ ,ジェットパック ,ロボットボム , 23, 80, 85
066,ブラシ ,ヒーローブラシレプリカ ,ジェットパック ,ロボットボム , 23, 80, 85
067,ブラシ ,ホクサイ・ヒュー ,マルチミサイル ,ジャンプビーコン , 23, 80, 85
068,ブラシ ,ホクサイベッチュー ,ウルトラハンコ ,キューバンボム , 23, 80, 85
069,ブラシ ,パブロ ,スーパーチャクチ ,スプラッシュボム , 5, 100, 100
070,ブラシ ,パブロ・ヒュー ,イカスフィア ,トラップ , 5, 100, 100
071,ブラシ ,パーマネント・パブロ ,インクアーマー ,スプリンクラー , 5, 100, 100
072,チャージャー ,スプラチャージャー ,ハイパープレッサー ,スプラッシュボム , 88, 50, 40
073,チャージャー ,スプラスコープ ,ハイパープレッサー ,スプラッシュボム , 91, 50, 30
074,チャージャー ,スプラチャージャーコラボ ,キューバンボムピッチャー ,スプラッシュシールド , 88, 50, 40
075,チャージャー ,スプラスコープコラボ ,キューバンボムピッチャー ,スプラッシュシールド , 91, 50, 30
076,チャージャー ,ヒーローチャージャーレプリカ ,ハイパープレッサー ,スプラッシュボム , 88, 50, 40
077,チャージャー ,スプラチャージャーベッチュー ,イカスフィア ,スプリンクラー , 88, 50, 40
078,チャージャー ,スプラスコープベッチュー ,イカスフィア ,スプリンクラー , 91, 50, 30
079,チャージャー ,リッター4K ,アメフラシ ,トラップ , 96, 20, 15
080,チャージャー ,4Kスコープ ,アメフラシ ,トラップ , 100, 20, 5
081,チャージャー ,リッター4Kカスタム ,バブルランチャー ,ジャンプビーコン , 96, 20, 15
082,チャージャー ,4Kスコープカスタム ,バブルランチャー ,ジャンプビーコン , 100, 20, 5
083,チャージャー ,ソイチューバー ,スーパーチャクチ ,キューバンボム , 78, 38, 70
084,チャージャー ,ソイチューバーカスタム ,ジェットパック ,カーリングボム , 78, 38, 70
085,チャージャー ,スクイックリンα ,インクアーマー ,ポイントセンサー , 75, 70, 60
086,チャージャー ,スクイックリンβ ,イカスフィア ,ロボットボム , 75, 70, 60
087,チャージャー ,スクイックリンγ ,ジェットパック ,キューバンボム , 75, 70, 60
088,チャージャー ,14式竹筒銃・甲 ,マルチミサイル ,カーリングボム , 78, 90, 80
089,チャージャー ,14式竹筒銃・乙 ,クイックボムピッチャー ,ポイズンミスト , 78, 90, 80
090,チャージャー ,14式竹筒銃・丙 ,バブルランチャー ,タンサンボム , 78, 90, 80
091,スロッシャー ,バケットスロッシャー ,マルチミサイル ,キューバンボム , 58, 85, 50
092,スロッシャー ,ヒーロースロッシャーレプリカ ,マルチミサイル ,キューバンボム , 58, 85, 50
093,スロッシャー ,バケットスロッシャーデコ ,イカスフィア ,スプリンクラー , 58, 85, 50
094,スロッシャー ,バケットスロッシャーソーダ ,クイックボムピッチャー ,スプラッシュボム , 58, 85, 50
095,スロッシャー ,ヒッセン ,インクアーマー ,クイックボム , 31, 80, 70
096,スロッシャー ,ヒッセン・ヒュー ,アメフラシ ,スプラッシュボム , 31, 80, 70
097,スロッシャー ,スクリュースロッシャー ,ハイパープレッサー ,ロボットボム , 60, 90, 40
098,スロッシャー ,スクリュースロッシャーネオ ,スプラッシュボムピッチャー ,ポイントセンサー , 60, 90, 40
099,スロッシャー ,スクリュースロッシャーベッチュー ,スーパーチャクチ ,タンサンボム , 60, 90, 40
100,スロッシャー ,エクスプロッシャー ,バブルランチャー ,スプリンクラー , 77, 64, 20
101,スロッシャー ,エクスプロッシャーカスタム ,イカスフィア ,ポイントセンサー , 77, 64, 20
102,スロッシャー ,オーバーフロッシャー ,アメフラシ ,スプラッシュシールド , 85, 28, 49
103,スロッシャー ,オーバーフロッシャーデコ ,キューバンボムピッチャー ,スプリンクラー , 85, 28, 49
104,スピナー ,バレルスピナー ,ハイパープレッサー ,スプリンクラー , 78, 38, 50
105,スピナー ,ヒーロースピナーレプリカ ,ハイパープレッサー ,スプリンクラー , 78, 38, 50
106,スピナー ,バレルスピナーデコ ,バブルランチャー ,スプラッシュシールド , 78, 38, 50
107,スピナー ,バレルスピナーリミックス ,ナイスダマ ,ポイントセンサー , 78, 38, 50
108,スピナー ,スプラスピナー ,マルチミサイル ,クイックボム , 62, 80, 90
109,スピナー ,スプラスピナーコラボ ,アメフラシ ,カーリングボム , 62, 80, 90
110,スピナー ,スプラスピナーベッチュー ,ウルトラハンコ ,ポイズンミスト , 62, 80, 90
111,スピナー ,ハイドラント ,スーパーチャクチ ,ロボットボム , 85, 10, 20
112,スピナー ,ハイドラントカスタム ,インクアーマー ,トラップ , 85, 10, 20
113,スピナー ,クーゲルシュライバー ,ジェットパック ,ポイズンミスト , 85, 17, 60
114,スピナー ,クーゲルシュライバー・ヒュー ,アメフラシ ,ジャンプビーコン , 85, 17, 60
115,スピナー ,ノーチラス47 ,イカスフィア ,ポイントセンサー , 74, 36, 69
116,スピナー ,ノーチラス79 ,ジェットパック ,キューバンボム , 74, 36, 69
117,マニューバー ,スプラマニューバー ,マルチミサイル ,クイックボム , 50, 22, 70
118,マニューバー ,スプラマニューバーコラボ ,ジェットパック ,カーリングボム , 50, 22, 70
119,マニューバー ,ヒーローマニューバーレプリカ ,マルチミサイル ,クイックボム , 50, 22, 70
120,マニューバー ,スプラマニューバーベッチュー ,イカスフィア ,キューバンボム , 50, 22, 70
121,マニューバー ,スパッタリー ,キューバンボムピッチャー ,ジャンプビーコン , 24, 47, 80
122,マニューバー ,スパッタリー・ヒュー ,アメフラシ ,ポイズンミスト , 24, 47, 80
123,マニューバー ,スパッタリークリア ,スーパーチャクチ ,トーピード , 24, 47, 80
124,マニューバー ,デュアルスイーパー ,マルチミサイル ,ポイントセンサー , 70, 22, 60
125,マニューバー ,デュアルスイーパーカスタム ,アメフラシ ,スプラッシュボム , 70, 22, 60
126,マニューバー ,ケルビン525 ,ジェットパック ,トラップ , 62, 76, 35
127,マニューバー ,ケルビン525デコ ,イカスフィア ,スプラッシュシールド , 62, 76, 35
128,マニューバー ,ケルビン525ベッチュー ,インクアーマー ,タンサンボム , 62, 76, 35
129,マニューバー ,クアッドホッパーブラック ,スーパーチャクチ ,ロボットボム , 58, 22, 90
130,マニューバー ,クアッドホッパーホワイト ,ロボボムピッチャー ,スプリンクラー , 58, 22, 90
131,シェルター ,パラシェルター ,アメフラシ ,スプリンクラー , 43, 65, 60
132,シェルター ,ヒーローシェルターレプリカ ,アメフラシ ,スプリンクラー , 43, 65, 60
133,シェルター ,パラシェルターソレーラ ,スプラッシュボムピッチャー ,ロボットボム , 43, 65, 60
134,シェルター ,キャンピングシェルター ,バブルランチャー ,ジャンプビーコン , 62, 85, 85
135,シェルター ,キャンピングシェルターソレーラ ,カーリングボムピッチャー ,スプラッシュシールド , 62, 85, 85
136,シェルター ,キャンピングシェルターカーモ ,ウルトラハンコ ,トラップ , 62, 85, 85
137,シェルター ,スパイガジェット ,スーパーチャクチ ,トラップ , 50, 29, 25
138,シェルター ,スパイガジェットソレーラ ,イカスフィア ,スプラッシュボム , 50, 29, 25
139,シェルター ,スパイガジェットベッチュー ,インクアーマー ,トーピード , 50, 29, 25
入門教材① プログラミングを実行する画面を開く
プログラミングを実行する画面を開きます。本当にめちゃくちゃ簡単です。
以下のリンクをクリックして下さい。
codingground SIMPLY EASY CODING [python]
codingground(コーディンググラウンド)という無料プログラム実行サイトが開きます。
上の画像のような画面が出てくれば準備完了です!
※ サイトが重くて動かない場合は、以下のサイトを使って下さい。
入門教材② 標準入力エリアに入力データを書く
今回のプログラムも標準入力の画面を使います。
画面左側にある「STDIN」(標準入力の意味)を押して、入力データを書きましょう。
今回は、データが横に長いので、画面も横長に変更しておいた方がいいでしょう。
今回は標準入力のエリアに、スプラトゥーンのブキCSVデータをコピー・貼り付けして、その後プログラムを作っていきます。
入門教材③ プログラムを書く(第12回はスプラトゥーンのブキを絞りこむプログラムです)
入力データの準備ができたら、次にプログラムを書いていきましょう。
パソコンのキーボードを使って、画面左側にプログラムを書いていきます。
第12回は、Python[パイソン]というプログラミング言語を使って、スプラトゥーンのブキを絞りこむプログラムを作ります。
画面の上側に、上の画像と同じ9行のプログラムを書いてみて下さい。
実行すると、標準入力エリアのブキのCSVデータの中から、スペシャルに「アメ」がつき、かつ、サブに「ボム」がつくブキに絞り込んで表示するプログラムです。
上側に9行のプログラムが書き終わって、以下のような状態になれば完成です。
お父さん、
i == 0
って書き方変じゃない?
確かに変だね。学校の算数じゃそんな書き方しないもんね。
i = 0 … i に 0 を格納する
i == 0 … i と 0 が等しい
という意味の違いがあるんだ。
じゃあ、if i==0: は、
「もし i が 0 に等しかったら」
っていう意味か。
「 : 」の意味は何だったっけ?
: (コロン)はね、if(もし)とか for(くりかえす)の行の
最後に必ず書くんだけど、
「次の行に意味が続いてますよ!」
みたいに覚えておくといいかな。
入門教材④ 実行ボタンを押す
最後に、書き終わったプログラムを実行してみます。
左上にある「Execute」(実行)のボタンを押してみましょう。
画面下の「Result」(結果)に、スペシャルがアメフラシで、サブが○○ボムのブキが絞り込まれて表示されましたか?
なるほど!
data[3]は3列目のスペシャル、
data[4]は4列目のサブウェポン
を指しているのか。
そうそう、他の列でも動作するから書き換えてやってみてごらん。
おぉ!こりゃ便利だね。
コレでぼくの好きなサブが「ロボットボム」のブキを絞って、お父さんに勝負を挑むよ!
まぁ、何のブキで挑まれても負ける気がしないけどね。
次回の入門講座では、別の文字を書くプログラムでなぜそのような動作をするのかを解説しようと思っています。お楽しみに!
以上、だんなの「初心者のためのPythonプログラミング入門講座」でした。
次回はコチラ
第13回:大きな文字や絵を表示してみよう
おすすめの入門書籍・入門教材
初心者の方にオススメな本を紹介します。