Pythonを一から本当に学ぶにはどうするか
ゼロから Python を学ぶための実践的なロードマップです。セットアップ、コア概念、実際のプロジェクト、そして初心者が避けるべきことをカバーしています。
「白紙の状態から」というのは、事前の知識なし、未完了のチュートリアルなし、想定される知識もなし、ということです。あなた、空白のエディタ、そして実際に使いたい言語があるだけです。これは今日から始める人に勧める道筋であり、コースのマーケティングページが売りたい道筋ではありません。
自分が理解できる環境をセットアップする
python.org から Python 3.12 以上をインストールするか、macOS/Linux を使っていて後から version control が必要になる場合は pyenv を使ってください。データサイエンスに進むとすでに決めていない限り、Anaconda はスキップしてください。まだ必要のない余分な重さが増えます。
VS Code を Python extension とともに使ってください。ターミナルを開いて python3 --version とタイプして、実行されることを確認します。次にフォルダを作成し、cd で移動して、python3 -m venv venv を実行してから source venv/bin/activate(Windows では venv\Scripts\activate)を実行してください。仮想環境に今から慣れておいてください。すべての実際のプロジェクトがそれを使うし、ここでの混乱が初期段階での大部分のストレスを引き起こします。
言語をこの順序で学ぶ
飛び回らないでください。それぞれについてコードを書いてから次に進み、これらを順番に進めてください:
- 変数、文字列、数値、ブール値
- リスト、辞書、タプル、集合
- 条件分岐(
if/elif/else)とループ(for、while) - 関数 — 引数、戻り値、デフォルトパラメータ
- ファイル I/O — テキストファイルと CSV ファイルの読み書き
try/exceptを使った例外処理- クラスとオブジェクト、基本だけ
- モジュールとインポート、標準ライブラリを含む
デコレータ、ジェネレータ、async を早期に学ぶという欲求に抵抗してください。後で重要になりますが、今は速度を落とし、実は遅れていないのに遅れていると感じさせます。
すぐに小さなものを作成する
ループについて読むだけではループを学びません。テキストファイル内の単語の頻度をカウントするスクリプトを書いてください。JSON ファイルに保存するコマンドラインの to-do リストを構築してください。random と string モジュールを使ってシンプルなパスワードジェネレータを作ってください。これらのそれぞれは 1 週間ではなく 1 晩で完成し、それぞれが例をコピーする代わりに実際の構文を使うことを強制します。
具体的な最初のプロジェクト:経費の CSV を読み込んでカテゴリー別の合計を出力するスクリプト。
import csv
from collections import defaultdict
totals = defaultdict(float)
with open("expenses.csv") as f:
reader = csv.DictReader(f)
for row in reader:
totals[row["category"]] += float(row["amount"])
for category, total in totals.items():
print(f"{category}: ${total:.2f}")
このスクリプト 1 つで、ファイル処理、辞書、ループ、フォーマットされた出力 — 10 行で基本のほとんどに触れます。
エラーメッセージを恐れずに読む
KeyError は辞書キーが存在しないことを告げます。TypeError: unsupported operand はどこかで文字列と int を混ぜていることを告げます。Python のトレースバックは正確な行を指します。新しい学習者はしばしくパニックになって Stack Overflow を検索する代わりに、エラーの最後の行を読みます。それはたいてい正確に何が悪いかを言っています。下から上へ読むように訓練してください。
パッケージをインストールする前に標準ライブラリを使う
初心者はしばしばすでに組み込まれているものが何かを学ぶ前に、サードパーティパッケージに手を伸ばします。os、pathlib、datetime、json、re、および collections は日常的なスクリプティングニーズの大部分をカバーしています。これらに最初に熟達してください。外部パッケージが実際に必要な場合、仮想環境内で pip install を使用し、pip freeze > requirements.txt で依存関係をロック地点に保存して、プロジェクトを再現性のある状態に保ってください。
基本が固まったら方向を決める
しっかりした練習を 3、4 週間後、何があなたの興味を引き出すかに気づくでしょう — 自動化、Flask や Django を使った web アプリ、pandas を使ったデータワーク、またはセキュリティタスク用のスクリプティング。各方向は同じ基本を再利用しますが、異なるライブラリに向かいます。すべてを同時に学ぶことを試みないでください。1 つを選んで 1 か月間深く掘り下げてください。
早期にスキップするもの
タイプヒント、仮想マシン、すべての文字列メソッドを暗記しようとすることはスキップしてください。自分でコードをタイプせずにビデオを何時間も見ることはスキップしてください。タイプは実際の学習が起こるところであり、見ることではありません。毎行タイプするために一時停止する 20 分のチュートリアルは、受動的に見た 3 時間の講義よりも多く教えます。
これ以上の構造化された練習を求めるのであれば、Korra Studio の Python と Scripting セグメントは同じ基本をハンズオン演習で歩み、ブラウザで直接実行できます。
この記事は AI の支援を受けて執筆し、Korra Studio の Michal Pilch(CISSP)が確認のうえ公開しました。
これは Korra Studio ナレッジベースの 1 つのノートです。プラットフォームはすべてのトピックと 1 対 1 メンタリングをペアで提供します。
無料で始めるarrow_forward