Python入門 - Pythonファイルの書き方と実行方法を理解しよう

作成日:   更新日:

本ページではPythonの入門コンテンツとして初学者向けにPythonを利用したプログラムを作成するための基本的な作法について解説します。

Pythonプログラムの動かし方#

まず、下記のコードを tutorial.py という名前で保存してみてください。

# これはコメントを書いている部分

print('Pythonスクリプト')

これで Pythonで動作するプログラムが記述できました。単に文字を出力するのみの非常に単純なプログラムですが立派なプログラムです。

それでは、作成したプログラムを実行するにはどうすればよいでしょうか?

コマンドラインからの実行#

すべてのOSで同じように操作ができる方法ですが、各OSによってそこに至るまでの操作が異なります。

Windowsの場合#

最も簡単な方法は、ファイルを保存しているディレクトリの中で PowerShell を起動する方法です。

上記のPythonプログラムを作成した場所で、メニューバー上の「ファイル」をクリックし、「Windows PowerShell を開く」から「Windows PowerShellを開く」という個所をクリックします。

/images/python/tutorial/open-powershell.webp

管理者として開く、という方は押さないでください[1]

この操作により、画面上に文字だけのウィンドウが出てきたかと思います。これが PowerShell と呼ばれるもので、Windows上で文字列を利用して色々な操作を行うことができるものになります。LinuxやmacOSなどの影響で「ターミナル」や「端末」(ただ日本語訳しただけです) と呼ばれたり、一般的な呼称として「コンソール」「コンソール画面」「コマンドライン」と呼ばれることもあります。

映画などでハッカーが文字をすごい勢いで打ち込んで何かをしている、その画面がこれだと思っていただければ大きく違わないです。

このウィンドウ上で、文字を打ち込むことで Python プログラムを実行することができます。以下の文字を打ち込んで、Enterキーを勢いよく押してください。

python tutorial.py

すると Pythonスクリプト という文字が表示されます。

/images/python/tutorial/open-powershell2.webp

PowerShell上で tutorial.py を実行した際の画面例。個人情報の観点から一部黒塗りです。

これで Python プログラムを実行することができました!

macOS の場合#

macOSでは「ターミナル」を利用します。 Spotlight 検索で探しましょう。

Command + Space により Spotlight 検索を起動し、その中に "terminal" と打ってみます。 すると、「ターミナル.app」というアプリが検索に出てくるかと思います。そこでEnterを押下。

/images/python/tutorial/open-terminal-macos.webp

Spotlight 検索で "terminal" と打ち込んだ画面。

この操作により、画面上に文字だけのウィンドウが出てきたかと思います。これが 「ターミナル」あるいは「端末」 と呼ばれるもので、文字列を利用して色々な操作を行うことができるものになります。一般的な呼称として「コンソール」「コンソール画面」「コマンドライン」と呼ばれることもあります。

このウィンドウ上で、文字を打ち込むことで Python プログラムを実行することができます。以下の文字を打ち込んで、Enterキーを勢いよく押してください。

python tutorial.py

すると Pythonスクリプト という文字が表示されます。 私の環境ではターミナルの表示を弄っているので見た目が異なるかもしれませんが、同じものです。

/images/python/tutorial/open-terminal-macos2.webp

ターミナル上で tutorial.py を実行した際の画面例。個人情報の観点から一部黒塗りです。

Linuxの場合#

Linuxの場合にも、macOSとほとんど同じです。ターミナルの立ち上げ方に違いがある程度です。

Linuxユーザはこの手のターミナル操作には慣れていると思いますので、割愛します。

ダブルクリックで実行、はまだお勧めしません#

通常のプログラムのように、ダブルクリックで実行することも可能ではあります。

しかし、現時点ではこの方法で起動してもあまり意味がありません。実際にやってみるとわかります。

Windows の場合以下の手順からプログラムを PowerShell を経由せずに実行することが可能です。

  • tutorial.py を右クリック

  • 「プログラムから開く(H)」

  • 「Python」を押す

上記手順でプログラムを実行すると、一瞬何かが映った後にすぐに消えてしまいます。

これは一瞬先ほどの PowerShell (ではなく細かく言うとコマンドプロンプトですが、あまり気にしない) の画面が表示された後にすぐに消えている、という動作が行われています。tutorial.py に記述されている内容を実行した後、作業が終わったのでウィンドウが閉じてしまっているのですね。これではプログラムを実行したのに何が行われたかわかりません。例えばエラーが生じたために何かを出力していたとしても、すぐに閉じてしまうため問題が発生していることすらわからない可能性があります。

これを防ぐためにはユーザからの操作をもとに動作するアプリケーションである必要があります。GUIなどを備えたアプリケーションなどがそれにあたります。

今後のページではそういったプログラムを作成することもありますが、Pythonで作成するプログラムがすべてそのタイプであるとも限りません。本ページで紹介したコマンドラインからの起動が最もオールマイティな方法になります。

この動作を知ったうえで意図して行う場合は問題ありませんが、Pythonになれるまでは少なくともコマンドラインから実行する方が確実でしょう。

Python プログラムの形式#

さて、Pythonプログラムを作成して実行することができましたが、肝心のPythonプログラムについて説明しておりません。

今回作成したものは以下のようなコードでした。

# これはコメントを書いている部分

print('Pythonスクリプト')

このコードの簡単な説明と、Pythonのファイル形式について説明します。

# で始まる行はコメント#

ファイルの先頭に # で始まる行を記述していますが、これは「コメント」と呼ばれるものです。いわゆるメモですね。

プログラムを書いていると何かしらのメモ書きを残しておきたくなることがあります。こういった場合に利用されるものがコメントと呼ばれるものです。

今回の例では特に意味のないコメントですが、実際には処理を行っている理由や注意書きなどを残すのに利用されるこのです。本ページのようなサイトでは処理を説明するためによく利用されます。

print() は文字を出力する「関数」#

1行空白をおいて、次の行に print という文字が来ています。これはPythonで用意されている文字列出力関数になります。PowerShellやターミナルの画面上に文字を見せるための関数です。

「関数」という単語によって数学の授業を思い起こされるかもしれませんが、まさにその関数です。ですが、そんなに難しいものではなく、今の段階では print という文字の後にカッコ () を書いて、その中に シングルクオーテーション (一重引用符) '' で囲って文字を書けばOK、と思っておいてください。(文字で書くとむしろややこしいですね)

日本語で書いてOK#

今の時代には誰も気に留めないかもしれませんが、昔は日本語や韓国語などのアルファベット以外の文字は取り扱いが難しく、Pythonプログラム上に書く際には注意が必要である時代もありました。現在利用されいてる Python3 系列ではこれらは特に気にする必要はありません。

ただし、保存するファイルは UTF-8 という形式であることが望ましいです。

Pythonが理解できるものを記述したファイルを「スクリプト」と呼ぶ#

今回書いたようなプログラムを、 Pythonスクリプト と呼びます。

Pythonはプログラミング言語の中でもスクリプト言語と呼ばれるものに分類され、スクリプト言語が理解できるファイルのことをスクリプトと呼びます。

Pythonで読みだして実行される、という点で「プログラム」と明確な差異があるわけではないですが用語として押さえておいていただけると、他のサイトで勉強する際にスムーズかもしれません。

補足: アプリケーションとプログラム#

本ページでも「プログラム」と「アプリケーション」という用語が出てきていますが、プログラミングの文脈では特にあまり差はないと思います。ほとんど同じ意味で利用されると思っていてよいです。

個人的な印象では、以下のようなものがアプリケーションと呼ばれることが多い気がしています。アプリケーション (application) が 応用 (apply) からきているので、基本というよりは応用といったものにつけられるイメージがあります。

  • GUIなどを備えていていろんなユーザに利用されることを想定しているもの

  • ライブラリ側が、ライブラリを利用して作成されるプログラムを指す場合

他方、スマートフォンなどでは明確に「アプリケーション」(アプリ)という呼び方が存在していますので、ご注意ください。

まとめ#

さて、本ページでは実際に Python スクリプトを作成し python コマンドによって実行することができました。これでPythonの学習を始める準備ができたといえます。

これ以降では具多的に Python の機能を学習し、それらを利用してプログラムを作成していきましょう。

Python