高校1年生の子どもにPythonを教えてます。娘です。来週あたりから情報の授業でPythonのプログラムをするするらしく、父親がプログラマーという強みを生かしてちょっと目立ちたい様です。まぁプログラムはとにかく頭を使うので子どものためにはやってもらった方が絶対に良いと思っております。

 さて、何から始めよう 

めんどくさがりやで、直ぐに動くのを確かめられないとダメな子です。言語仕様を基礎から教えるみたいのは多分NGです。

なので、凄く簡単なプログラムを書かせました。while文とかif文で凄く簡単な3行くらいのプログラムですね

n = 1
while n == 1:
    print('nは',n,'です')
    n=0

例えばこんな簡単なプログラムとかです。

変数nに1を代入して、

変数nが1の間はずっと下の処理を続ける定義をして、

変数nをprint文で表示する。

そのままだと永遠にnを表示し続けるから、変数に0を代入する事でwhileループを強制的に止める

こんな感じの内容を動きを見せながら教えました。

次の日は以下のプログラムを書かせて実行させました。

"""
city_code 130010は東京
その他は以下を参照の事
http://www.nankuma.com/etc/livedoor-weather-id.html

"""

import requests

def weather_command():
    base_url = 'http://weather.livedoor.com/forecast/webservice/json/v1'
    city_code = '110010'
    url = '{}?city={}'.format(base_url, city_code)
    r = requests.get(url)
    weather_data = r.json()
    city = weather_data['location']['city']
    label = weather_data['forecasts'][0]['dateLabel']
    telop = weather_data['forecasts'][0]['telop']

    response = '{}ノ{}ノ天気ハ「{}」デス'.format(city, label, telop)
    return response

print(weather_command())

王道プログラムですが、pipの導入から見せて、requestsをimportする為にはpipでrequestsをインストールする必要がある事から教えました。

加えて、HTMLリクエストを送る際にgetとpostがある事を教えて、今回はgetを使うんだよって事も教えましたが、本人は??的な感じでした。

でも、base_urlでアクセスするとエラーになり、city_codeを添えたurlでアクセスするとjson形式のデータがブラウザに返るのを確認すると何となくイメージできたみたいで、ほぼこのプログラムの流れは理解できたみたいで面白がっておりました。

子どもが楽しめる様に教えるのって教える方が大変ですが、楽しんでくれるとこっちも嬉しいものですね。

今後もコツコツとPython女子を目指して頑張ってコーディングしてもらおうと思います。