序章
Python は、簡潔で学びやすく強力なプログラミング言語として、プログラマーにも初心者にも同様に愛されています。Python も学習したいが、どこから始めればよいかわからない場合は、この記事で Python を独学で学習し、すぐに言語を習得できるようにいくつかの方法を整理します。
なぜPythonを学ぶのか? (最終目標を決める)
Python を始める前に、なぜ Python を学ぶのかという明確な目標を持つ必要があります。この言語を使って具体的に何をしようとしているのでしょうか? 退屈なタスクを自動化したいですか、それとも Web アプリケーションを作成したいですか? ほとんどの初心者が犯すよくある間違いは、言語を学ぶためだけに言語の学習を開始し、(試験を受ける以外の)目標を持たないことです。言語を学習することと、その言語を使用して実際のアプリケーションを構築することは別のことであることを忘れないでください。プログラマーとしての目的は、単に言語を学ぶことではなく、何かを構築できるようになることであるべきです。したがって、まず何を構築したいかを正確に決定し、目標が設定されたら、次のステップである Python 言語の学習に進みます。
Python 言語をどのように始めればよいですか? 私も数年前に Python を学び始めたときにこのような問題に遭遇したことを覚えています。今の段階で勉強している私には適していますが、非常に難しいことがわかりました勉強しようとしても理解できないので、学習への興味が失われます。
最初は歯を食いしばって粘り強く取り組みましたが、それはおそらくこの側面に興味があったからでしょう。その後、ゆっくりと学び、探求し、より自分に合った方法を見つけました。この学習方法は、他の新しい知識を学ぶときにも非常に応用できます。
Python の学習は、実際には他の言語の学習と同じであり、開始する手順は次のとおりです。
- 自分に合った本を選んでください。
- 自分自身の学習ロードマップを決定します。
- ビデオ素材を見つけてください。
- 次に、IDE ツールを自分でインストールし、書きながら学習を始めます。
以下で詳しくお話します。
1. 自分に合った本を選ぶ
まずは簡単な本から始めて、初心者に最適な Python 本に焦点を当ててから、より複雑な本に移りましょう。
初心者向けのベスト Python 本
入門書はとても大切で、難易度は入門レベルで、あまり複雑すぎないこと、一度に夢中になってリズムが崩れるのではなく、段階的に学んでいくことが大切です。これらの本はたくさんありますが、主にこの 3 冊をお勧めします。『Python プログラミング: 入門から実践まで (第 2 版)』、『Python プログラミング クイック スタート: 面倒な作業を自動化する』、『Python 入門からプロジェクト実践まで』がすべて揃っています。 Douban 上記のスコアの方が高いです。
1.「Pythonプログラミング 入門から実践まで(第2版)」
Python をクラッシュさせたくなっても、心配する必要はありません。これは Python の包括的な入門書であり、すぐにプログラムを作成して問題を解決できるようにする素晴らしい本です。この本は 2 つの部分に分かれています。最初の部分では、Matplotlib などの強力な Python ライブラリとツール、リスト、辞書、if ステートメント、クラス、ファイルと例外、コードなど、Python プログラミングで理解する必要がある基本概念を紹介します。テストなど; 第 2 部 理論を実践し、単純な 2D ゲームを含む 3 つのプロジェクトを開発する方法、データを活用してインタラクティブなインフォグラフィックを生成する方法、単純な Web アプリケーションを作成およびカスタマイズする方法を説明し、読者が一般的なプログラミングを解決するのに役立ちます問題とパズル。
2.「Python プログラミング クイック スタート: 面倒な作業を自動化する」
この本は、Python によるプログラミングの実践的なガイドです。この本の目的は、Python 言語の基本知識を紹介するだけでなく、プロジェクトの実践を通じてこれらの知識とスキルを応用する方法を読者に教えることです。この本の最初の部分では、Python プログラミングの基本概念を紹介し、2 番目の部分では、Python プログラムを作成してコンピューターで自動化できるさまざまなタスクを紹介します。第 2 部の各章には、読者が学習できるいくつかのプロジェクト手順が含まれています。各章の終わりには、読者が学んだことを定着させるのに役立ついくつかの演習と詳細な実践プロジェクトも提供されています。付録部分には、すべての演習の解決策が記載されています。
この本は、Python を通じてプログラミングを学びたいすべての読者、特にプログラミングの基礎が不足している初心者に適しています。本書を読むことで、読者は強力なプログラミング言語とツールを活用し、Python プログラミングの楽しさを体験できるようになります。
3.「Python入門からプロジェクト実践まで」
この本は500ページを超える分厚い本で、内容も比較的充実していますが、フルカラーなので見栄えもよく、要点が掴みやすいです。本全体は主に 3 つの部分に分かれており、1 つは Python 言語の基礎知識で、この部分は半分近くを占めており、非常に包括的であり、もう 1 つの部分は、一般的に使用される GUI フレームワークを含む一般的な Python フレームワークの紹介であり、 pygame ゲーム フレームワーク、Web クローラー フレームワーク、Flask Web フレームワークの使用、Django Web フレームワークの使用、最後の部分は、Google の小さな恐竜ゲーム、飛行機戦争ゲーム、WeChat ジャンプ アシスタント ツール、自動車など、いくつかの実戦プロジェクトです。ホーム画像取得ツール、AI画像認識ツール、一緒に旅行ウェブサイトの関電宝(京東版)にアクセスすると、非常に興味深い感じがして、開発の基本的なプロセスを理解できます。全体的にこの本も良いです。
上級学習者向けのベスト Python 本
4.「Pythonハイパフォーマンスプログラミング」
本書は全 12 章で構成されており、コードを最適化し、実際のアプリケーションの実行速度を高速化する方法を詳しく説明しています。この本では、コンピュータ内部の背景知識、リストとタプル、辞書とセット、イテレータとジェネレータ、行列とベクトルの計算、同時実行性、クラスタとワーク キューなどのトピックを取り上げます。最後に、一連の実際のケースを通じて、アプリケーション シナリオで注意する必要がある問題を示します。
この本は、初心者および中級の Python プログラマー、Python 言語の基礎をある程度持っていて、より高度な技術を習得したいと考えている読者に適しています。
5.「Python クックブック (第 3 版) 中国語版」
「Python クックブック (第 3 版) 中国語版」では、さまざまな分野で Python を使用するいくつかのスキルと方法が紹介されており、そのトピックはデータ構造とアルゴリズム、文字列とテキスト、数値、日付と時刻、イテレータと生成、サーバー、ファイル、I/ O、データのエンコーディングと処理、関数、クラスとオブジェクト、メタプログラミング、モジュールとパッケージ、ネットワークと Web プログラミング、同時実行性、実用的なスクリプトとシステム管理、テスト、デバッグと例外、C 言語拡張機能など。
この本では、Python アプリケーションの多くの一般的な問題を取り上げ、一般的な解決策を提案します。この本には、実際のプロジェクトに簡単に適用できる実践的なプロセス設計スキルとサンプルコードが多数含まれています。さらに、「Python Cookbook (3rd Edition) Chinese Edition」では、ソリューションがどのように機能するのか、なぜ機能するのかについても詳しく説明されています。
つまり、この本は、一定のプログラミング基礎を備えた Python プログラマーが読んで参照するのに非常に適しています。
6.「スムーズパイソン(第2版)」
Python を流暢に話せるようになりたいなら、Fluent Python がぴったりの本です!!! これは、最も効率的な Python コードの作成を徹底的にガイドする実践ガイドです。これが必要なのは、ほとんどのプログラマーが他の言語で学んだパターンを Python に適応させようとするため、Python の最良の機能を学べないからです。Fluent Python では、まず Python データ モデルを取り上げ、次にデータ構造、関数、オブジェクト指向イディオム、制御フロー、メタプログラミングなどを取り上げます。これは Python のコア関数とライブラリに関する完全なチュートリアルであり、最終的にはコードをより短く、より速く、より読みやすくする方法を教えます。
この本は、知識を広げたい中級および上級の Python プログラマーのための実践的なプログラミングのヒントの宝庫です。
これらのコンテンツといくつかのソース コードは、Python の入門および上級学習教材といくつかのソース コードをアップロードしました。ダウンロードできないパートナーはブロガーにプライベート メッセージを送信することもできます。
2. 自分自身の学習ロードマップを決定する
Python の入門の基礎について書かれた本を何冊か読むと、Python についてほぼ理解できるようになります。自分自身の学習ロードマップを立てることができ、その後の学習にとって非常に重要です。たとえば、Python のどの側面に関係するのか、どの側面に興味があるのかがすでにわかっている場合は、現在の状況に応じて計画を立てることができ、勉強することができますこの部分は詳しく理解できますが、他の部分は私にしか理解できません。学習ロードマップは、より体系的かつ効率的に学習するのに役立ちます。
今日は Python の全方位学習ルートを共有します。
1. Python の概要
Python を長い間学習してきたが、どこまでを入門と呼ぶのでしょうか?
テクノロジーに対する理解は人それぞれ異なりますが、私の個人的な意見では、次のことを学べばエントリーできると考えられます。以下の内容は Python の上級者向け全方位に必要な基礎知識なので、クローリングや Web 開発を学びたい場合は最初に学習する必要があります。
たくさんの知識がまとまっているので、プログラミングの基礎と応用に分けて、独学の方はこの体系に従って基礎を固めると、将来の道がより安定します。
対象者:基礎ゼロ・基礎が弱い方はこちらからPythonを学習してください
2、爬虫類
人気の方向性としては、アルバイトでも業務効率化のための補助スキルとしてもクローリングは良い選択であり、もちろんクローラエンジニアの中にはこれを本業としている人もいます。
それでは、爬虫類はどのようにしてシステムになることを学ぶのでしょうか? 爬虫類中級者に必要なことはそれほど多くありませんが、このシステムを参考に学習してください、9割マスターできれば爬虫類上級者と自信を持って言えます。
対象者:クローラーディレクション/データ分析ディレクション/ノンプログラマー昇給
3. データ分析
この時代にデータが最も貴重であることは誰もが知っていますが、取得したデータを理解する必要があるという前提があり、本来の効果を発揮できないデータはすべてゴミデータです。
データ分析の使命は、直接的および間接的にデータの役割を果たすことです。
あなたがビッグ データ関連の仕事に従事している IT プロフェッショナルである場合は、次のデータ システムをマスターすることをお勧めしますが、Numpy、Pandas、および Matplotlib を知っていることがデータ分析を知っていることを意味するとは考えないでください。強力なものはまだ来ません。
データ分析を補助的なスキルと考える場合、以下を学んだ後はほぼ同じであり、ほとんどのニーズを満たすことができます。友達の中にはまだコンピュータを専攻しておらず、運用などの IT 以外の仕事に従事している人もいるかもしれません。その場合は、Python のエントリ + クローラー + データ分析を学ぶことをお勧めします。職場での作業効率を向上させるには十分です。フルスタックやテストなどに時間を浪費しても、あまり役に立ちません。
対象者:クローラーディレクション/データ分析ディレクション/ノンプログラマー昇給
4. Web開発(フロント/バックエンド)
Web 開発はプログラマーの間で人気の職業ですが、現時点では依然として大きな人材格差があります。Web開発はフロントエンド、バックエンド、フルスタックの3方向に分かれますが、現在中国ではフロントエンドとバックエンドの分離が主流で、フロントエンドは主にユーザーエクスペリエンスを重視し、バックエンドは主に、基礎となるビジネス ロジック、プラットフォームの安定性、パフォーマンスを考慮します。最も重要なことは、どの部分に何が必要かを理解することです。ユーザーに見える部分をやりたいのか、ユーザーから見えない部分に配慮するのか。
フルスタックに関しては、多くの世論とさまざまな意見がありますが、私の提案は、時間とエネルギーが許せば、より包括的な技術的アプローチを追求することは間違いではないということです。
対象者:フロントエンド/バックエンド/フルスタックエンジニア
5. 自動テスト
自動テストはすでに将来のトレンドになっており、多くの企業がプログラマーにテストを自動化する能力を求めていますが、自動テストの分野では、現時点では Python が最適な言語です。
対象者:プログラマー/テストエンジニア
6. 機械学習
機械学習は人工知能を実現する唯一の方法であり、これまでのものよりもはるかに難しく、アルゴリズムを扱うのは当たり前で、高い努力は高い利益をもたらし、給与も非常に良いです。この分野はPythonが非常に強いのですが
、この分野は敷居が高く、学部生は基本的に足を踏み入れないので、修士以上の学位を取得してからこの業界への参入を検討することをお勧めします。
3. 学習ウェブサイトとビデオ教材
書籍に加えて、Python を学習するためのオンライン リソースやオンライン ビデオもあります。ビデオコースでは直感的なデモンストレーションや例の説明が提供され、オンライン教材ではより洗練された知識を習得し、記憶を深められるため、特に初心者にとって役立ちます。
以下にいくつかの有名な Python ビデオ チュートリアルを示します。
- ゼロ基礎で Python を学習: Netease クラウド クラスルーム Little Turtle の Python 入門チュートリアルは、完全にゼロベースのエントリーで、事前知識は必要ありません。前半は主に Python3 の文法的特徴について説明し、後半は主にクローラー、Tkinter、Pygame ゲーム開発における Python3 の適用例など、実際のプロジェクトについて説明します。
- Mofanpython : ステーション B のアップマスターである Mofan 氏の教育ビデオはシンプルで理解しやすく、初心者でもいくつかのあいまいな概念をすぐに理解できます。同時に、機械学習と深層学習に関する関連チュートリアルも多数あります。
- Microsoft Python チュートリアル ビデオ:入門、上級 、および上級、各ビデオの長さは約 2 ~ 6 分ですが、10 分を超えるものはわずかです。コース全体はマイクロソフト社シニアプロジェクトマネージャーのクリストファー・ハリソン氏とマイクロソフト社 AI ゲーム開発マネージャーのスーザン・アイバック氏の 2 名の講師が共同で解説します英語には中国語字幕が付いていますプログラミングを学びながらリスニングの練習ができますGitHub と同期しています
自分の学習スタイルに合ったビデオ教材を選択し、ビデオチュートリアルに従って学習して練習してください。
同時に、オンラインチュートリアルは次のとおりです。
- Python3 チュートリアル | 初心者向けチュートリアル
- Liao Xuefeng Python チュートリアル
- Python公式チュートリアル
- Python 基本チュートリアル、Python 入門チュートリアル (非常に詳細)
4. ケース演習
ことわざにあるように、最後に練習することです。「練習せずに話し、スキルを偽る」です。本を読むだけではだめで、実践的な演習が不可欠です。プログラミングの学習は非常に重要な学習プロセスです。プログラミングを学ぶには、自分でプログラミングする必要があり、近道はありません。
最初から、本の例に従ってコードを直接入力することができ、想像を絶するメリットもあります。その後、いくつかの古典的な例を見つけて練習し、ゆっくりと少しずつ積み上げていけば、すぐに始められるようになります。
小規模プロジェクトの事例をこちらにまとめてみました↓↓↓
Github: 100 の小規模な Python 実践プロジェクト、https://github.com/Python-World/python-mini-projects。
Blue Bridge Cloud Class の 70 の Python プロジェクトのリスト ( https://www.cnblogs.com/shiyanlou/p/7238503.html )。
Python 戦闘プロジェクトのコレクション — 32 の Python 戦闘プロジェクト、https://www.bilibili.com/video/BV1ev4y127y5 ?p=1 。
要約する
最後に、まだ学校に通っている多くの大学生と同じように、質問がある場合は、関連する専攻の先生に行くことができます。大学の先生はまだ有能なので、生意気に先生のお尻を追いかけて質問することができます。周りにはPythonの学生がいて、専門家とコミュニケーションをとることもできます。
市場には Python に関する多くの代理店があり、水深は比較的深いですが、すべての代理店が信頼できないわけではなく、代理店は依然としてある程度の支援を受けています。独学では本当に十分ではなく、学習のために教育機関に応募することに決めた場合は、慎重に選択し、自分にとって役立つより良い教育機関を選択することを忘れないでください。盲目的に教育機関に応募することはできません。
Python に興味がある場合、または Python を使用して補助関数や統計処理を実行する場合、Python は非常に良い選択です。Pythonは簡単に始めることができますが、学習するほど複雑になる言語でもあり、習得には時間と労力がかかります。
Pythonの学習についてはこちらでシェアさせていただき、その後はPython入門、Python上級、機械学習などのコラムを更新していきますので、皆様のお役に立てれば幸いです!