実行

Python 3 を実行するには、いろいろな方法があります。初心者はまず Google Colab で実行してみましょう。

Google Colab については別ページに移しました。

python コマンド(REPL)

以下ではパソコンに Python 3 がインストールされていることを前提に説明します。Python 3 を起動するコマンドは python3 だと仮定します(環境によっては python でよいかもしれません)。

念のため、python あるいは python3 で起動する Python のバージョンを確認しておきましょう:

python --version
python3 --version

ターミナル(Windows であれば PowerShell など)に

python3

とだけ打ち込むと、>>> というプロンプトが現れますので、その右側に Python の命令を打ち込みます。例えば

2+3

と打ち込んで Enter すれば、答え「5」が現れます。

あとはPythonの初歩を見ながらいろいろ試してください。

ターミナルに戻るには、quit() または exit() と打ち込みます。

REPL(Read-Eval-Print Loop)は対話的にコードを実行することを指す語です。

IDLE

オマケに付いている IDLE という IDE(統合開発環境)を起動すれば、上記「python コマンド」と同じように使えます。あまり使いやすくないかもしれません。

IPython

IPython なら、もう少し対話的に(interactive に)Python を使えます。ターミナル(Windows ならコマンドプロンプトか PowerShell)に

ipython

と打ち込みます(もし古い Python 2 が出てくるようなら ipython3 としてみてください)。

実際には、いくつかオプションを付けて起動することが多いと思います。例えば、matplotlib を使い、文字に色を付けたくないなら

ipython --matplotlib --colors=NoColor

とします。

ヘルプを見るには、例えば ?print のように打ち込みます(このヘルプの終了は q)。

quit または exit と打ち込めば終了します。

スクリプト

Python プログラム、例えば

for i in range(3):
    print("大事なので3回言います")

は、テキストファイルとして保存してから実行することができます。テキストファイルとして保存した実行可能なプログラムを「スクリプト」と呼びます。テキストファイルですから、Windows の「メモ帳」や Mac の「テキストエディット」などの標準テキストエディタで作成できますが、本格的にプログラミングをするなら、Visual Studio Code や Emacs や Vim のようなプログラミング専用テキストエディタが便利です。

Python スクリプトのファイル名は test.py のように拡張子を py にします。保存の際の文字コードは UTF-8 にします。実行するには、ターミナル(Windows ならコマンドプロンプトか PowerShell)で(スクリプトを保存したディレクトリに移動してから)

python3 test.py

と打ち込みます。文字化けする場合は、文字コードが UTF-8 になっているか確認してください。

Linux や Mac などの UNIX 環境で実行可能なスクリプトにするには、先頭に #! /usr/bin/env python3 を付けます(複数の python3 があって具体的に指定したい場合は #! /usr/local/bin/python3 などのようにします):

#! /usr/bin/env python3

for i in range(3):
    print("大事なので3回言います")

この場合も文字コードは UTF-8 ですが、特に #! で始まる場合は BOM を付けないように注意する必要があります。実行可能にするには、ターミナルで

chmod 755 test.py

のように打ち込みます。これで、ターミナルに

./test.py

と打ち込めば実行されます。便利なスクリプトなら、拡張子を付けないで /usr/local/bin のようなパスの通った場所に置いておくといいかもしれません。その際、自前のコマンドであることをわかりやすくするために、ファイル名の先頭にコンマ(,)を付けると便利かもしれません(Start all of your commands with a comma)。

もしどうしても別の文字コード、例えば Shift JIS にしたいなら、

#! /usr/bin/env python3
# -*- coding: shift_jis -*-

for i in range(3):
    print("大事なので3回言います")

のようにします。

スクリプトとして実行する場合は、コマンドライン引数が sys.argv というリストに入ります。次のような簡単なスクリプトで実験できます:

#! /usr/bin/env python3

import sys

print(sys.argv)

もし Python 2 で書かれたスクリプト filename.py があれば、コマンド 2to3 -w filename.py で Python 3 の文法に書き直してくれます。オリジナルは filename.py.bak にリネームされます。詳しくはマニュアルの 2to3 参照。

One-Liner

ターミナルで1行だけの Python スクリプトを実行できます:

$ python3 -c 'x=2;y=32;print(x**y)'
4294967296

Jupyter Notebook

Jupyter Notebook(ジュピター・ノートブック)はブラウザ上で使える Mathematica Notebook のような環境です。もともと Julia、Python、R をサポートするということで Jupyter という名前になったようですが、今は40以上の言語に対応しています。もしインストールされていなかったなら、pip install notebook でインストールできます。

ターミナルに

jupyter notebook

と打ち込むと、Web ブラウザが立ち上がって、カレントディレクトリのファイル名一覧が表示されます(Mac や Linux なら jupyter notebook & と打ち込めばバックグラウンド動作になります)。もし拡張子が ipynb のファイルがあれば、それを開けば前回の続きの計算ができます。新しいノートブックを開くには、この画面で [New ▼] ボタンを押し Python 3 を選びます。一番上の Untitled をクリックすると、ノートブックの名前が変えられます。最初からノートブックのファイル名がわかっていれば

jupyter notebook ファイル名

と打ち込むほうが楽です。ちなみに、拡張子 ipynb は、Jupyter Notebook が IPython Notebook と呼ばれていたころの名残りです。

In [ ]: の右の箱に Python のプログラムを打ち込みます。何行かまとめて入れることもできます。最後の行の値が(print() を使わないでも)表示されます。Shift + Enter で、実行し次の箱に移動します(または Ctrl + Enter で、実行し次の箱に移動しません)。

[Code ↕︎] ボタンを [Markdown ↕︎] に切り替えれば、Markdown 形式で説明が書けます。$E = mc^2$ のように $ で挟んで数式を書くこともできます。

終了は File → Close and Halt です。右上の [Quit] で Web サーバが終了します。

拡張子 ipynb のファイルを GitHub にプッシュすれば、ドキュメントとコードと実行結果が公開できます。この方法によるドキュメント作成は GitHub 上で数式を表示するための便利な方法でもあります(最近は GitHub の Markdown でも数式がサポートされるようになりました。ただ、地の文ではうまくいくのですが、箇条書きの中などではうまく表示できないようです)。

次のようにいろいろなオプションを指定できます:

jupyter notebook --no-browser --no-mathjax --port=8888 &
jupyter notebook list
jupyter notebook stop

オプション --ip='*' を付ければ別ホストからのアクセスも許可します。

JupyterLab

Jupyter Notebook の新しい顔です。pip install jupyterlab で入ります。ターミナルに

jupyter lab

と打てば立ち上がります。

使い方は Jupyter Notebook とほぼ同様です。最初に Launcher(ローンチャーだけれど日本ではよくランチャーと呼ぶ)という画面が出ますので、Notebook の Python 3 を選びます。

Spyder

Spyder は Anaconda に付いている IDE(統合開発環境)です。R の RStudio に似ています。

Anaconda を入れなくても pip install spyder でインストールすることができます(詳しくはこちら参照)。

VS Code

Visual Studio Code(VS Code)を使う場合、まず最初に Extension ボタン(正方形が3+1個)をクリックして「Japanese」と入れ、Japanese Language Pack for ... を Install し、「Restart Now」のボタンを押して VS Code を再起動すると、メニューが日本語になります。「基本設定」→「配色テーマ」で自分好みの配色を選びます。

Extensions ボタンをクリックして「Python」というエクステンション(拡張機能)をインストールします(→ Getting Started with Python in VS Code)。

VS Codeのエクスプローラーで作業用のフォルダを開き、フォルダ名のすぐ右にある「新しいファイル」をクリックしてファイル名として例えば test.py を入力します。Python のプログラムを入力し、保存します。右上の ▷ をクリックすると実行されます。

「Linter pylint is not installed」と言ってくるなら、念のためインストールしておきます。pylint(パイリント)は Python の文法チェックツールです。

拡張子 ipynb のファイルを開く(新規作成する)と、裏で Jupyter サーバが立ち上がり、Jupyter Notebook になります。%matplotlib と書かなくても matplotlib がインラインで使えます。

上記以外のVS Codeの拡張機能では、Markdown Preview Enhanced、LaTeX Workshopがお薦めです。

Emacs 内で IPython を動かす

いろいろな方法があるようですが(Python Programming In Emacs 参照)、デフォルトの python.el で提供される Python モードでの方法を説明します。

~/.emacs.d/init.el には例えば次のように書いておきます:

(setq python-shell-interpreter "ipython"
      python-shell-interpreter-args "--matplotlib --no-automagic -i")

今までは --simple-prompt オプションも付けていましたが、macOS Sonoma でバックエンド MacOSX で Matplotlib の表示ができなくなったので、外しました。

拡張子 py のファイルを開くと、自動的に Python モードになります。まずは C-c C-p (run-python) で IPython プロセスを起動します(拡張子 py のファイルを開かなくても直接 M-x run-python でも起動できます)。バッファ全体を実行するには C-c C-c (python-shell-send-buffer)、選択したリージョンを実行するには C-c C-r (python-shell-send-region) とします。詳しくは、M-x help の次に m と打つと、モードのヘルプが現れます。

Emacs で EIN(アイン)を動かす

EIN(アイン)をご覧ください。