ML競馬育成計画

技術ブログ×競馬予測

Python言語の二歩目を踏み出す勉強会に参加してきました

忙しくて全然まとめられず大分前のことになってしまいましたが、レバテックさんが主催されたPythonの勉強会「【ヒカ☆ラボ】「Python言語」二歩目を踏み出そう!」に参加してきました!

【ヒカ☆ラボ】「Python言語」二歩目を踏み出そう!

個人的メモ

講演を聞いてて言ってたこと(+感じたこと)を箇条書きでメモっておきます。

  • デバッガー(pdb)を使いましょう。逐一print()を書いてたら消耗します。
  • Pyhonとしては統一ルールが存在する。サポートするツールもあるし、統一すればチーム開発の時に揉める事もない。
  • PEP8という名前の規約で、「PYCODESTYLE」というPEP8対応のチェックツールがある。
  • 「FLAKE8」は、PYCODESTYLEに加えてpyflakesのチェック(動くけど良くないよ〜を摘出)を行ってくれる。
  • エディタによるチェック機能も存在する(ATOMにもあるか調べちy)
  • 自動テストは、大規模なコードでは必須。関数単位で仕様が明確になるし、リファクタリングしても安心
  • 「UNITTEST」テストコードを書いて実行できるモジュール
  • 「doctest」コメントに書いてあるものがそのままテストになる、というモジュール
  • 非公式のドキュメント(Qiita,teratail,個人ブログ)はあくまでヒント!!
  • 「必ず一次情報に当たる」を癖にする必要がある。bashでmanを見ろとか、多分色々な所で同じ事を言われている。ということは、本当に大事な基本所作だと思うが、ついついGoogle検索に甘えがち、、
  • 文字列メソッドは実は色々な事ができる(本当にそれ、正規表現必要なの?を常に問いかけるべし!)
  • 例えば、endswith()を使うと、接尾語をチェックする時に正規表現を使う必要がない。
  • エラーは情報の宝庫。例外処理の使い所には注意すること。
  • TRACEBACKを冷静に読みましょう。
  • 例えば「ValueError: invalid literal for int() with base 10」10進数を基数とした型を格納しないと駄目!というメッセージ。情報処理の基礎知識と英語が基礎力として大事になってくる。
  • エラーメッセージをググるよりも機械翻訳のほうがまだマシ
  • 内包表記は簡潔にかける&わかりやすい場合がある
  • Djangoは"ジャンゴ"と呼称する!笑
  • 「エキスパートpythonプログラミング」次の本としては良いかも
(おまけ)わかりやすくコードを書く技術
  • 関数名変数名に良い名前をつける
  • コメントをきちんと書く(docstring)
  • Aという関数からBという関数を呼ぶ時には、呼ばれる関数が上にあること
  • Pythonの良い所は、ちゃんとドキュメントが整備されていることとか、ライブラリが充実していること

講演自体は1時間程度と短い時間でしたが、内容も濃く、有意義なイベントでした。やはりこういう講演は、普段自分で調べないような知識を知る機会を与えてくれる、というのが良いですね。Pythonはこれからも勉強を続けていきたいので、機会があれば継続的に参加したいと思います。