最高のPython本

| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |

Pythonを学ぶのに最適な本

この記事では、書評のコレクションを通じてPythonを学ぶのに最適な本を紹介します。各レビューは、本の味、カバーされたトピック、およびそれらのトピックを説明するために使用されたコンテキストを提供します。書籍のスタイルや表現、読者の背景、その他の要因に応じて、さまざまな本がさまざまな人々の共感を呼びます。

Pythonはすばらしいプログラミング言語です。ほぼすべてのプログラミングタスクに適用でき、迅速な開発とデバッグが可能で、おそらく最もフレンドリーなユーザーコミュニティからのサポートを提供します。

初心者向けの最高のPythonブック

はじめにPythonを使用することは、新しいスキルを学ぶようなものです。学習を導くために接続できるリソースを見つけることが重要です。幸いなことに、Pythonでのプログラミングの基本とプログラミングの詳細の両方を学ぶのに役立つ優れた本が不足することはありません。豊富なリソースがあるため、状況に最適な本を特定するのは難しい場合があります。

Pythonを初めて使用する場合は、入門書の1つでしっかりとした基盤が得られます。

子供と一緒にPythonを学びたい場合もあれば、子供たちのグループにPythonを教えたい場合もあります。若い読者を対象としたリソースについては、最高のPython児童書をチェックしてください。

Pythonの旅を進めるにつれて、コードの効率を最大化するためにさらに深く掘り下げたいと思うでしょう。中級および上級の最高のPythonブックは、Pythonスキルを向上させるのに役立つ情報を提供し、Pythonのエキスパートになることを可能にします。

プログラマー向けの最高のPythonブック

これらのレビューを読んだ後、それでもどの本を選ぶべきかわからない場合は、出版社がサンプルの章またはセクションを提供して、その本が提供するものの例を示します。この本のサンプルを読むと、著者のペース、スタイル、期待を最もよく表すことができます。

最も目立つ本はどれでも、書評家の1人であるスティーブンCの逸話を検討してください。ハウエル:

「好きな先生が私に言ったことがあります。『最初にどの本を読んでもかまいません。常に2番目に最も理にかなっています。』

できますいつもそうだったとは言えませんが、最初の紹介で混乱したりイライラしたりしたときに、2回目の紹介ですべての違いが生まれることは確かです。

Pythonのレッスンを学びながら、私は私が集めた最初の2冊の本で使われている例を理解するのに苦労しました。コンセプトがクリックされ始めたのは、私が言及した3冊目の本までではありませんでした。

重要な教訓は、行き詰まったりイライラしたりして、持っているリソースが役に立たない場合は、しないでください。 tあきらめます。別の本を見たり、Webを検索したり、フォーラムで質問したり、ちょっと休憩したりできます。 "

注:この記事にはAmazonなどの小売業者へのアフィリエイトリンクが含まれているため、一部のリンクをクリックして購入することでRealPythonをサポートできます。アフィリエイトリンクは、編集上の決定にまったく影響を与えません。

Pythonを学ぶのに最適な本

Pythonを初めて使用する場合は、おそらく1つになります。 2つの状況の例:

プログラミングに不慣れで、Pythonの学習を開始したい。別の言語でのプログラミングの経験が豊富で、Pythonを学習したい。このセクションでは、これら2つのシナリオの最初のシナリオに焦点を当てます。プログラミングとPythonを初めて使用する読者にとって、Pythonプログラミングの最高の本であると私たちが考える本のレビュー。したがって、これらの本は、プログラミングの経験を必要としません。基本から始めて、一般的なプログラミングの概念とPythonへの応用の両方を教えます。 。

Pythonクラッシュコース

Eric Matt hes(No Starch Press、2016)

箱に書かれていることを実行し、非常にうまく機能します。この本は、変数、文字列、数値、リスト、タプルを使用して、Pythonの基本的な要素とデータ構造の概要から始まり、それぞれをどのように操作するかを説明しています。

つまり、命令と論理テストがカバーされ、続いて辞書がディップされます。次に、この本では、ユーザー入力、ループ、関数、クラス、ファイル管理、およびコードのテストとデバッグについて説明します。

これは、本の前半にすぎません。後半では、3つの主要なプロジェクトに取り組み、スマートで楽しいアプリを作成します。

最初のプロジェクトは、pygameパッケージを使用して開発されたエイリアンの侵略ゲーム、本質的にはスペースインベーダーです。 (クラスを使用して)船を設計し、それを飛ばして弾丸を発射する方法を計画します。したがって、さまざまなクラスのエイリアンを設計し、エイリアンの艦隊を移動して、撃墜できるようにします。最後に、スコアボードとハイスコアリストを追加してゲームを完成させます。

次に、次のプロジェクトでは、matplotlibを使用したデータの視覚化、ランダムウォーク、サイコロの転がし、統計分析を行い、pygalを使用してグラフと表を作成します。パッケージ。さまざまな形式でデータをダウンロードし、Pythonにインポートして結果を表示する方法、Web APIを操作する方法、GitHubとHackerNewsからデータを取得して表示する方法を学びます。

3番目のプロジェクトでは、作成について説明します。 Djangoを使用して学習日記を作成し、ユーザーが何を学習したかを追跡する完全なWebアプリケーション。 Djangoのインストール、プロジェクトの構成、独自のテンプレートの設計、管理インターフェースの作成、ユーザーアカウントの構成、ユーザーごとのユーザーアクセスコントロールの管理、Bootstrapを使用したアプリケーション全体のモデル化、そして最後にHerokuへのデプロイの方法について説明します。 。

この本はよく書かれていて、よく整理されています。それは本の後半を構成する多数の有用な演習と3つの挑戦的で楽しいプロジェクトを特徴とします。 (David Schlesingerによるコメント。)

Head-First Python、第2版

Head-Firstシリーズの本は本当に好きですが、全体的な内容は他のほとんどの本よりも確かに軽いです。このセクションの他の推奨事項。トレードオフは、このアプローチによって本がよりユーザーフレンドリーになることです。

あなたが一度に少しずつ物事を学ぶのが好きで、たくさんの本物を持ちたいと思うような人なら-人生の例と関連する概念のイラスト、そしてヘッドファーストシリーズはあなたのためです。出版社のウェブサイトには、彼らのアプローチについて次のように書かれています。

「認知科学と学習理論の最新の研究に基づいて、Head-First Pythonは、テキストではなく、視覚的に豊かな形式を使用して心を引き付けます-眠りにつく豊富なアプローチ。新しい概念に苦労して時間を無駄にするのはなぜですか?この多感覚学習体験は、脳の実際の機能のために設計されています。(出典)

イラスト、例、括弧などが満載情報、Head-First Pythonは常に魅力的で読みやすいです。この本は、リストを掘り下げ、それらの使用方法と操作方法を説明することからPythonツアーを開始します。モジュール、エラー、ファイル処理について説明します。各テーマは、統一プロジェクト:Common Gateway Interface(CGI)を介してPythonを使用して学校のスポーツコーチ向けの動的なウェブサイトを構築します。

次に、この本では、Androidアプリを使用してあなたが作成したウェブサイト。あなたはhoを学びますwユーザー入力を処理し、データをエンコードし、Pythonアプリケーションをウェブ上にデプロイしてスケーリングすることの意味を探ります。

この本は他の本ほど包括的ではありませんが、かなりの範囲をカバーしています。間違いなくよりアクセスしやすく、痛みがなく、効率的な方法でPythonタスクを実行します。これは、プログラムを書くというトピックが最初は少し怖いと思う場合に特に当てはまります。

この本は、あらゆる課題をガイドするように設計されています。コンテンツはよりターゲットを絞っていますが、忙しくて学ぶための資料がたくさんあります。あなたは退屈することはありません。ほとんどのプログラムブックが

Pythonを考える:コンピュータサイエンティストのように考える方法、第2版

ビデオゲームの作成中にPythonを学ぶのが面倒な場合は、次のことを検討してください。 AllenDowneyの本ThinkPythonは、はるかに真剣なアプローチを採用しています。

タイトルが示すように、この本の目的は、プログラマーがプログラミングについてどのように考えるかを教えることであり、それは良い仕事をします。他の本と比較して、それはより乾燥していて、より直線的な方法で組織されています。この本は、Pythonの基本的なプログラミングについて知っておく必要のあるすべてのことを、非常にシンプルで明確かつ包括的な方法で焦点を当てています。

他の同様の本と比較すると、一部の本ではそれほど詳しくありません。より高度な分野ですが、他の本が近づかないトピックを含む、より広い範囲の資料をカバーしています。このようなトピックの例には、演算子のオーバーロード、ポリモーフィズム、アルゴリズム分析、可変性と不変性が含まれます。

以前のバージョンでは演習が少し軽視されていましたが、最新版ではこの欠点が大幅に修正されています。この本には、事例研究として提示された4つのかなり詳細なプロジェクトがありますが、全体として、他の多くの本よりも直接適用の演習が少なくなっています。

ステップバイステップのプレゼンテーションが好きな場合事実と、プロのプログラマーが問題をどのように見ているかについてのより良いアイデアを得たいので、この本は素晴らしい選択です。 (DavidSchlesingerとStevenC. Howellによるレビュー)

物理学における効率的なコンピューティング:Pythonを使用した研究のためのフィールドガイド

これは、私がいたときに持っていたかった本です。最初にPythonを学びました。

名前にもかかわらず、この本は、物理学、研究、またはコンピューターの問題の経験がない人に最適です。

実際に実践的なものです。 Pythonの使用ガイド。 Pythonを教えるだけでなく、コマンドラインやバージョン管理、ソフトウェアのテストや配布などの関連トピックもカバーしています。

この本は、優れた学習リソースであるだけでなく、トピックは多くの例と演習が絡み合って整理されているため、Pythonの優れたリファレンスです。

この本は、開始方法、実行方法、正しく実行する方法の4つの適切な名前のセクションに分かれています。 、およびその入手方法。

「はじめに」セクションには、実行を開始するために必要なすべてのものが含まれています。 bashコマンドラインの基本に関する章から始めます。 (はい、Windows用のbashをインストールすることもできます。)次に、この本はPythonの基本を説明し、演算子、文字列、変数、コンテナー、ロジック、フロー制御など、予想されるすべてのトピックをカバーします。さらに、さまざまな種類の関数すべてに焦点を当てた章全体と、クラスとオブジェクト指向プログラミングに焦点を当てた章があります。

その基盤に基づいて、ハウツーセクションはよりデータ中心に移行します。 、Pythonの領域。本の約3分の1を占めるこのセクションは、科学者、エンジニア、およびデータサイエンティストにより適していることに注意してください。それがあなたなら、楽しんでください。そうでない場合は、関連するセクションを選択して続行してください。ただし、このセクションの最後の章では、pip、conda、仮想マシン、Dockerコンテナを使用してソフトウェアをデプロイする方法を説明しているので、必ずお読みください。

データを操作したい方は、このセクションは、データの分析と視覚化に不可欠なライブラリの概要から始まります。次に、正規表現、NumPy、データストレージ(コア外での操作の実行を含む)、特殊なデータ構造(ハッシュテーブル、データ、Dツリーおよびkdツリー)、および並列計算のトピックを教えるための別の章があります。

「正しく理解する」セクションでは、Pythonでの作業に関連する一般的な落とし穴の多くを回避して克服する方法を説明します。 makeを使用してソフトウェアパイプラインを作成する方法を教えることにより、ソフトウェアディストリビューションの議論を拡大することから始めます。次に、GitとGitHubを使用して、時間の経過に伴うコード変更を追跡、アーカイブ、整理する方法を学習します。これは、バージョン管理と呼ばれるプロセスです。このセクションは、コードのデバッグとテストの方法、2つの非常に価値のあるスキルを教えることで終わります。

Python3を難しい方法で学ぶ

Pythonを難しい方法で学ぶのは古典的です。私はこの本のアプローチの大ファンです。 「難しい方法」を学ぶときは、次のことを行う必要があります。

この本の良い面は、コンテンツのプレゼンテーションの質です。各章は明確に提示されています。コード例はすべて簡潔で、よく構成されており、的を射たものです。演習は有益であり、あなたが遭遇する問題はまったく圧倒されることはありません。最大のリスクは誤植です。この本を読んでください。そうすれば、Pythonの初心者ではなくなるはずです。

タイトルに躊躇しないでください。あなたが長距離を探しているなら、「難しい方法」が最も簡単な方法であることがわかります。たくさん書くのが好きな人は誰もいませんが、それはプログラミングに伴うものなので、最初からそれに慣れることは良いことです。この本の良いところの1つは、いくつかのエディションで完成されたため、すべてのエッジが滑らかになりました。

この本は、それぞれがベースとなった50を超える一連の演習として作成されています。前のものとそれぞれがあなたに言語の新しい特徴を教えています。演習0から、コンピューターにPythonをインストールすることで、簡単なプログラムの作成を開始します。変数、データ型、関数、ロジック、ループ、リスト、デバッグ、辞書、オブジェクト指向プログラミング、継承、およびパッケージ化について学習します。ゲームエンジンを使用して簡単なゲームを作成することもできます。

次のセクションでは、自動テスト、文を解析するための字句ユーザー入力分析、ゲームをウェブ。

Zedは、細部を隠さない魅力的で忍耐強いライターです。この本を正しい方法で作業する場合、つまり、テキストとプログラミングの演習全体で提供される学習のヒントに従うことによる「難しい方法」である場合は、プログラマーの初心者の段階をはるかに超えて完了します。 (David Schlesingerによるコメント。)

RealPythonコースパート1

このeBookは、Real Pythonコースシリーズの3つ(これまでのところ)の最初のものです。それは始めることを目的として書かれ、それを達成するための素晴らしい仕事をしています。この本は、説明的な散文、サンプルコード、および改訂演習を組み合わせたものです。インターバル改訂演習では、学習した内容をすぐに適用できるようにすることで、学習を強化します。

前の本と同様に、コンピューターにPythonをインストールして実行するための明確な手順が提供されています。構成セクションの後、データ型の簡単な要約を提供する代わりに、Real Pythonは文字列から始まり、実際にはかなり包括的です。30ページに進む前に、文字列を分割する方法を学びます。

適用可能なクラスメソッドのいくつかを試してみる方法を示すことで、Pythonのフレーバーについての良いアイデアを提供します。次に、関数とループの記述、条件付きロジックの使用、リストと辞書の操作、ファイルの読み取りと書き込みを学びます。

そうすれば、物事は本当に楽しくなります。pipを使用して(およびソースから)パッケージをインストールする方法を学習すると、Real Pythonは、PDFの相互作用と操作、PythonからのSQLの使用、Webページからのデータの取得、numpyとmatplotlibを使用した科学的計算の実行、そして最後にグラフィカルな作成について説明します。 EasyGUIとtkinterを使用したユーザーインターフェイス。

RealPythonについて私が最も気に入っているのは、基本を詳細かつ直感的な方法でカバーすることに加えて、この本ではPythonのより高度な使用法を探求していることです。 Webスクラッチなど、他の本も取り上げています。さらに高度なPython開発専用の2つのボリュームもあります。