
このサイトではいくつかPythonに関する記事を書いているんだけど、今日はPythonの学習に関する記事。ちなみに記事を書いている今だとこの2つあたりがPython関連だとよく読まれているだろうか。
関連記事Python初心者にできること・作れるもの3選!サクッと作ってみよう!
関連記事【OCR】Pythonで画像認識して文字(テキスト)を出力する方法!!
Pythonってどんなことできるの?みたいなことが気になったらちょっと覗いてみると参考になるかもしれません。そして今回はこのPythonを独学で学習していくための方法を書いていきたい。
エンジニアとしていくつかの仕事をしてきたよ
自分自身エンジニアとして正社員だったりフリーランスだったりでいくつか仕事をしてきました。今回の記事は、いくつかの言語を学んできた自分が思うPythonの独学方法ということになるかな。
目次
Pythonは他の言語と似ているのだろうか
PythonってRubyやPHP、JavaScriptなんかと何かと似ていますよね。試しにHelloと出力する関数を書いてみるとこんな感じ。
JavaScript書くの忘れたけど、JavaScriptもPHPと同じような記述になりますね。こうしてみるとPythonとRubyって似ているね。
だからRubyがわかる人ならPythonはある程度読めるだろうし、Pythonが読める人はある程度Rubyが読めるんじゃないかと思う。もちろん細かい所は色々違うけど。
それとフレーワークを使う場合はフレームワーク自体の勉強は必要になりますよね。PythonならDjangoが有名かな。
RailとLaravelとDjangoもある程度似ているか
とはいってもフレームワークも何となく使い方似ていますよね。Djangoはちょっとぐらいしか触ったことないけど、RailsとLaravelは結構似ているしDjangoも何となく通ずるところがあります。
設計の話だけどRailsとLaravelはMVC(モデル・ビュー・コントローラー)を使ってアプリケーションを作っていくっていくけど、DjangoはMTV(モデル・テンプレート・ビュー)だから違いは感じるはずです。
Pythonを独学で習得するために
Pythonを独学で学んでいくためにどんな学習をすればいいんだけど、どんな学習をすればいいと思いますか?
正解はないと思うし、好きなやり方でやればいいと思うけど、個人的には以下の記事で書いた方法を推していきたい。
関連記事プログラミング初心者は何から勉強していけばいいのか?おすすめの勉強法を考える!
上の記事で書いた勉強法は、ネットで使える学習サービスを使ったりプログラミングスクールを利用する方法。大体こんな感じ。
- Progateなどで言語の学習をする
- Udemyなどでより学習する
- オリジナルアプリを作る
- 分からないところを聞ける環境を作る
オリジナルアプリを作るところまでできるなら、もう自走して学習していけるだろうからこんな記事は必要ない。存分にゴリゴリと学習を進めていけると思う。
ただそこに到達するまでがきついんですよね、意味の分からないエラーに何度も悩まされて時間が溶けていきます。これを解消するにはスクールなどの分からないところを潰してくれる環境があればいい。
分からないところをすぐに聞ける環境を用意する
最初のプログラミング学習ってわからないことだらけど、間違いなくエラーの壁にぶち当たりまくります。その際に全て自分で調べて解決っていうのはかなりきついんじゃないかな?と思う、発狂してしまうのも無理はない。
そしてそうった時にはそのぶち当たっている問題をすぐに聞ける環境があった方が良い。自分も最初プログラミングスクールに通ってプログラミングを勉強したんだけど、分からないところをすぐに聞けるのは強いです。
例えばTechAcademyならこういうやつ。
DMM Web Campも同じような感じですね。
こういう体制はプログラミングスクールはどこも整えていると思うけど、もしどんな体制か気になったら無料相談なんかを大体やっていると思うからその時に色々聞いてみるといいですよ。
今ではサブスク型のプログラミングスクールもあるから、安くそういった環境が欲しい方は見てみるといいです。
Pythonプログラミング学習を行う
ProgateなどでPythonの文法などを学んでいこう
Progateって書いているけど、別に好きなサイトでいいと思います。今やたくさんの学べるサービスがあるから好きなものを選ぼう。自分のレベルにあったものがいいね。
関連記事【学ぼ】プログラミング独学におすすめのサイト6選+αを紹介したい!!
ちなみにProgateなら全5レッスンありますね。
ただちょっとこれだけだと心許ないかなあ・・・という感じがしますよね。他の学習教材を使うことも視野に入れておこう。
PyQを使う
PyQはPython専門のオンラインで学べるプログラミングサービス。サイトを見てみると、Pythonに関する講座がいくつかある。
それぞれ学習量も結構あるから、良い勉強になるんじゃないだろうか。実際に問題を解いていくときの画面はこんな感じで、左側に表示スライド、右側にエディタとターミナルがありますね。
左側に表示される問題を見ながら、右側にコードを書いていくっていう流れだね。回答の判定に合わせるために変数が指定されていたりしてちょっと面倒な部分もあるけど、なかなかいいと思う。
勉強できる内容も幅広いですね。
月3040円になってしまうけど、Pythonに関する講座が揃えられている。だけど、7日間は無料で使うことができるから7日間使い倒してやろう。PyQから無料で体験することができる。
無料で学習できるサイトもあるけど、課金要素があるものは多いからどこかしらで1ヶ月だけ課金する・・・みたいなことは多分起きる気がします。(自分もProgate見たら昔課金していました)
Udemyを使って学習する
個人的にUdemyは結構良いなあと思っていて、自分もUdemyで講座を40以上買っている。プログラミング学習サイトでPythonがどんなものか知れたらUdemyに手を出してもいいのではないだろうか。
Udemyにはいろんな講座があるんだけど、プログラミングに関するものもかなりある。Pythonの講座もありますね。
現役シリコンバレーエンジニアが教えるPython 3 入門 + 応用 +アメリカのシリコンバレー流コードスタイル
ちなみにUdemyの講座は24000円とか多いけど、セールで2000円ぐらいになったりするから、その時に買うようにするといいですよ。
上で挙げた講座の作成者の酒井さんだけど、この方Youtubeもやっていますよね。自分もこの方の別の講座買ってやったりしたんだけど、Youtube見てからだとどんな人かちょっと分かって入りやすいかもしれない。
シリコンバレーエンジニア酒井潤チャンネル - シリエン戦隊JUN TV
Udemyの講座は結構量もあるので、理解できるようになるまで何度も見てみるといいと思います。一度買ってしまえば、動画講座だから停止したり巻き戻ったりっていうことができますからね。
FlaskやDjangoの講座もあったりするから気になったらUdemyで検索してみるといいですよ。
Youtubeを使って学習するのもあり
今はYoutubeでいろんな人がプログラミングについて話しているから、それらを活用して勉強するのもありですよね。(自分はあまりYoutubeでプログラミング勉強っていう経験はないけど、アーキテクチャの動画を見て分かりやすいなあ・・・なんて思ったこともある。)
Pythonに関する動画なら調べてみると結構あるから、勉強になる動画を見てみるといいですよ。
- Python超入門コース 合併版|Pythonの超基本的な部分をたった1時間で学べます【プログラミング初心者向け入門講座】
- 【Python入門①】Pythonの特徴とPythonでできることを徹底解説!
Youtubeで学習できるなんて良い時代になったものだ。
本で学習する
本だけで学習するのはおすすめしないけど、本は暇なときに見ていられるしリファレンス的に使うことができるから結構勉強になる。自分の好きな本を買えばいいと思うけど、Amazonのベストセラーは現時点でこれですね。
ただ自分がどれぐらいできるのかによって使う本も変わったりするから、ネットで本を買う場合にはレビューを読んでからの方がいいですね。お店ならちょっと読んで良い感じだったら買えばいい。自分最初Rubyを本格的に学んだんだけど、Ruby on Railsの本それなりに読んだ気がする。
Pythonで人工知能関連の学習をする
Pythonで人工知能学習したい・・・っていう人もいると思うんですよね。ただ人工知能関連の学習って結構難しいです。自分も人工知能作るかあって思ってこのDeepLearningの本(Pythonで学ぶディープラーニングの理論と実装)5回ぐらい読んだ覚えがあるけど、やっぱり難しいよね。
他にもPytorchの本や強化学習の本とかいくつか買いましたね。ただ人工知能で使うプログラムって普通にWeb開発するのとはちょっと違う感じできつい。。。
でどの時期か忘れたけど、Aidemyをやったんだよね。分かりやすくて良かった思い出がある。遡ってみると講座も買っていました。
Aidemyとは
自分が講座を受講した時とは今や講座内容も変わっていたりするけど、人工知能を学びたいならAidemyいいんじゃないかなあと思う。
Aidemy Premium Plan
PremiumPlan有料だけど、質問し放題でレビューしてくれたりするから本格的に学んでいきたい人にはいいね。人工知能のプログラミングスクールという感じ。
ちなみに無料でもスライド形式で多少の講座は用意されているから、興味のある人はやってみるといいと思います。
人工知能開発って難しいですよね、難しいからこそできるようになったら凄いんだろうけど・・・だからこそ価値があるのかもしれない。
Python独学まとめ
Pythonを独学するには?というような内容でちょっと書いたけど、独学ってやっぱりきつい部分は出てくると思います。作業をすると必ずエラーに何回も当たるから、そのたびにちょっと調べて解決できればいいんだけど、なかなかそうもいかないんですよね。
それが試練なのかもしれないけど、そういったときに聞ける環境にいることはとても強いです。悩んでいる時間って苦しい。ちなみに今回書いた方法はざっくりこうです。
- Progateなどで言語の学習をする
- Udemyなどでより学習する
- オリジナルアプリを作る
- 分からないところを聞ける環境を作る
初心者にとって大事なのが分からないところをすぐに解決できる環境を作ることだと思います。自分一人だと何をどうしていいか分からずに時間を消費してしまいますから。