この講座は、Pythonを初めて使うところから、テストと保存機能を備えたアプリを作るところまで進みます。教材の対象はPython 3.11以降です。3.11より新しい構文に依存しない形を基本にします。
実行するPythonを確かめる
Pythonはソースファイルを実行環境へ渡して動かします。処理系の内部ではバイトコードなども使われるため、「コンパイルという段階が一切ない言語」と覚える必要はありません。まずは自分がどのPythonを実行しているかを確認しましょう。
macOSやLinuxでは python3 --version、Windowsでは py --version を試します。3.11以降を用意したら、新しい作業フォルダで python3 -m venv .venv を実行します。Windowsでは先頭をpyに置き換えられます。
macOS/Linuxの仮想環境の実行ファイルは .venv/bin/python、Windowsは .venv\Scripts\python.exe です。以下の本文のpythonはこの実行ファイルを指します。シェルで有効化してもよいですが、パスを直接指定すれば有効化し忘れを避けられます。
最初のファイル
次をUTF-8のhello.pyとして保存し、python hello.py を実行します。
import sys
name = "読者"
minutes = 15 + 10
print(f"こんにちは、{name}さん")
print(f"今日の学習時間: {minutes}分")
print(f"実行ファイル: {sys.executable}")
あいさつ、25分という計算結果、実行中のPythonの場所が表示されます。f文字列は、波括弧の中の式を文字列へ埋め込む書き方です。最後の行は、別のPythonで動かしていないかを調べる助けになります。
プロジェクトごとに環境を分ける
仮想環境は依存パッケージを分けるための仕組みで、OS全体を隔離するセキュリティ境界ではありません。異なるプロジェクトが異なる版のライブラリを使えるようにします。.venv 自体は通常Gitに入れず、依存の情報を記録して再作成します。
ライブラリの導入には python -m pip ... の形を使うと、どのPythonへ入れるかが明確です。この講座の多くの例は標準ライブラリだけで動くので、最初から大量のパッケージを入れる必要はありません。
練習と解答
練習:名前を変え、学習時間を35分にします。さらにインデントを不自然に増やした行を作り、エラーを読んでください。
解答:minutesの右辺を 15 + 20 にします。Pythonではインデントが構文の一部です。括弧だけが処理のまとまりを決めるわけではありません。エラーに出たファイルと行を、保存したファイルと照合します。
公式資料
Pythonチュートリアルとvenvが参照先です。