Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

Pythonの写経について

Discussion

Closed

私はpythonの初学者で、最近progateを2周して、pythonの入門書を1冊終わったところです。
その後、学習方法をいろいろ模索していたところ、プログラムを写す学習法、いわゆる写経がいいと聞き、実際やってみたところ、頭にすんなり入っていく感じがしたので、学習法の一つとして頑張ろうと思いました。

そこで質問なんですが、本を見ながら写経をしたいのですが、何かお薦めの本があれば教えていただけたらと思います。

よろしくお願いいたします。

1

「すんなり頭に入る」かは個人個人の特性や知識背景、そしてそもそもpythonで何をやりたいのかという目的意識によって大きく変化します。そのへんの条件設定が一切示されないまま「おすすめ」を問われましても、アマゾンのユーザレビュー以上のものを得ることはできないでしょう。

0Like

頭には入るけど、いざ自分で書いてみようとすると書けなかったりします。
Pythonの書き方を極めたいのであれば、https://checkio.org/ に挑戦して、正解後に他人のコードを見られるようになるので、なぜそんな書き方で処理できるのか、1行1行インタープリタにコピペしながら手を動かして動作確認することです。私はそうやりました。

ただし、この方法ではアプリケーションプログラムを作れるようにはなりません。
何か処理したいと思ったときにサッと書けるようになるだけです。
競技プログラミングには役立ちます。

2Like

本を見ながら写経をしたいのですが、何かお薦めの本があれば教えて

私は Kindle 本で購入することが多いのですが「Kindle 本は写経には向かないなぁ」と感じております。(ページ全体が画像で構成されているものが多く、文字の大きさが変えられず、検索もできないものが多いからです...技術本なのに)

さて、写経するなら以下のようなコードが大量に欲しい、ということだと思います。

  • 関数単位で各々シンプルな機能の実装に絞ったコード
  • 何をしているか解説がついているコード
  • 良質なコード(その使い方でデビューしても恥ずかしくないと思えるコード)
  • そのコードの応用・利用例があるもの
  • 上記が大量にあるもの

本ではないのですが、ライブラリやフレームワークは上記の集大成なので、それらを写経してみてはいかがでしょう?

写経することで勉強にもなり、フレームワークが何をしているのかの理解にもつながり、実際に唱える時はフレームワークを使い方えるようになっているという、一石二鳥です。

Web や機械学習など、自分が興味ある分野のフレームワークのソースコードを覗きにいかれてはいかがでしょう。

例えば以下は Web のフレームワークで有名なものの1つである Flask のログインのセッションに関するソースコードです。

ずいぶんと丁寧にコメントがあるなぁ、と。しかもコメント文を除けば関数単位で写経するには丁度いいコード量だと感じました。

と言いながら、コメントを読んだだけで「完全に理解した」私は写経が途中で面倒臭くなったのでした。

Python の標準ライブラリもいいのですが、ほとんどが C 言語で書かれているため、C を知らない私には早すぎた大人の世界でした。

何はともあれ、Python に限らず「みんなが使っているライブラリやフレームワーク」は下手な本よりも校正/更正の目が届いているので勉強になると思います。

0Like

Your answer might help someone💌