Python学習【365日チャレンジ!】118日目のマスターU(@Udemy11)です。
久しぶりに通帳記入にいってみると、少し前に特別定額給付金が振り込まれていました。
マイナンバーカードは取得していたので、オンラインで申請していたのですが、申請開始から少し時間を置いての申請だったので、結構遅くなるんだろうな〜と思っていたところ、以外に早く入金されていてびっくりしました。
といっても、特別定額給付金のオンライン申請を中止にするところが出てきたり、郵送申請が本格化しているので、すでに市区町村の申請窓口はてんやわんや状態であることは間違いなく、これから申請する人は、振り込みが7月ごろになるのではないでしょうか?
オンライン申請なのに、申請後は申請内容と住民台帳の称号を人の目で確認するってところに目が点になりましたが。。。
国がシステム統一して市区町村に提供しないと、今ある手続きのオンライン化なんて一生できないような気もします。
それでは、今日もPython学習をはじめましょう!
昨日の復習
昨日は、MVCモデルで完成した対話アプリJarvisに、対話を追加しました。
おすすめするスポーツが好きかどうかを聞いたときに、Yes
かNo
以外がタイプされたときに、Yes
かNo
で答えるように伝えたあと、再び同じ質問をするようにしました。
テンプレートの文言ファイルを追加して、robot.py
のrecommend_sport
メソッドのコードを少し変更し、console.py
に新しくget_other_template
メソッドを追加しました。
詳しい変更点は昨日の記事をごらんください。
今日は、作成したJarvisをパッケージ化して書き出してみます。
setup.py
setup.py
を作って、パッケージを配布する方法は、上記のエントリーで紹介しましたが、このときはどんな時に使うのか、いまいち理解できていなかった感じがします。
今回作成した対話アプリJarvisのパッケージを作って、公開したいと思います。
そのためにまず、setup.py
を作りますが、普段から利用しているPythonistaでは、StaShで実行しようとしてもエラーが起こって使えません。
[jarvis]$ python3 setup.py build
Error: 'ShIO' object has no attribute 'errors'
[jarvis]$
なので、今回もPycharmでパッケージを作ることにします。
setup.py
は、普通にPythonファイルを作成して、コードを書いてもいいのですが、Pycharmなら簡単に作ることができます。
まず、メニューの【Tools】 → 【Create setup.py】を選んで必要事項を入力します。
作成されたsetup.py
そのままでパッケージを作ると、main.py
とtemplates
フォルダのテキストファイルが含まれないので、次の2行を追加します。
この2行を追加することで作成されるパッケージにmain.py
とtemplates
フォルダを含めることができます。
引数のpackage_data
は、Pythonファイル以外のファイルを含める時に使い、パッケージ内のフォルダ名とリストで*(アスタリスク)
ですべてのテキストファイルのパスを指定しています。
引数py_module
は、ルートフォルダ内にあるmain.py
を指定しています。
sdistで実行
sdist
は、source distribution
の略で、パッケージをソースを配布するためのtar.gz
ファイルにまとめてくれます。
メニューの【Tools】 → 【Run setup.py Task…】をクリックして、sdist
をダブルクリックします。
オプションを入力する画面になりますが、何も入力せずに【OK】をクリックします。
これで配布用のパッケージ本体dist/jarvis-1.0.0.tar.gz
と、メタデータディレクトリjarvis.egg-info
が作成されます。
配布するのはtar.gz
あとは、dist
フォルダ内にあるjarvis-1.0.0.tar.gz
を配布するためのクラウドストレージに保存して、誰でもダウンロード可能にすれば公開完了です。
下記のリンクから、作成した対話アプリJarvisのソースをダウンロード可能なので、必要かどうかは別として、ご自由にお使いださい。
※念のため、最初にウイルスチェックをしてください。
1からコードを書く
Python学習365日チャレンジを始める前からPythonやPHPは触ったことがあったのですが、やりたいことがあって、ネット上で公開されているソースを活用し、カスタマイズして使っていた程度でした。
なので、コードを見て実際に動かして初めて動作がわかるだけで、こんな動作をさせるにはどのライブラリやメソッドを使えばいいなんてことはわかっていませんでした。
なんとなく、
このサンプルのここを変更すれば、こうなるんじゃない?
と考えて、コードを変更しながら、一つずつ実行して結果を確認しているような感じでした。
このやり方で、必要になった時に、必要な部分だけ理解して、必要なコードを作ればいいのですが、やはりWeb上のサンプルコードの検索からカスタマイズまで、めっちゃ時間がかかるんですよね。
しっかりとPythonを学習して、1からコードを書けるようになれば、自分でやりたいことができるうえ、他の人にもコードを提供できるるようになります。
これからの時代、生き残るためにはプログラミングのスキルは必須です。
もちろん1からコードを書けるようになるには時間がかかりますが、Pythonを使えるようになれば、あなたの価値が上がることは間違いありません。
Python学習の第一歩として、私も学習している酒井さんの講座を受講してみてはどうでしょう?
自分で書いたコードがきちんと動くのを体験すると、Pythonが楽しくなってきますよ!
それでは、明日もGood Python!