Pythonの実行方法”インタプリタ"、”スクリプト”、”コンパイル”を紹介。
Pythonには大きく分けて、「インタプリタ」、「スクリプト 」、「コンパイル 」の3つの実行方法があります。
それぞれの特徴 とどんな時に利用 するか紹介したいと思います。
インタプリタ実行
まずはインタプリタ の実行方法です。
これは非常に簡単でpython を起動して、コマンドを逐次解釈させてプログラム を動かします。
下がインタプリタ の「Hello World 」です。
# python
Python 3.6.5 (default, Mar 30 2018, 22:56:23)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-16)] on linux
Type help, copyright, credits or license for more information.
>>>
>>> print('Hello World!')
Hello World!
>>>
6行目でprint()関数を呼び出し、7行目で直ぐに実行結果が返ってきています。
スクリプト実行
スクリプト実行とは、テキストファイルにPythonのコードを書き 、pythonに読み込ませて実行 させます。
下が「Hello World 」のスクリプト です。
#!/usr/bin/python
# -*- coding: utf-8 -*-
print('Hello World!')
exit()
1行目の「!/usr/bin/python 」で何のバイナリで実行する か指定し、 2行目の「 -- coding: utf-8 - -」で文字コード を指定します。 下が実行結果です。
# python helloWorld.py
Hello World!
# ls -l helloWorld.py
-rwxr-xr-x. 1 root root 73 Jun 21 23:32 helloWorld.py
# ./helloWorld.py
Hello World!
1行目の実行はpythonにスクリプトファイルを読み込ませて実行します。
実行権限があれば、5行目のようにShellのように実行することも可能です
コンパイル実行
Pythonのコンパイルは「バイトコンパイル 」のことを指します。
バイトコンパイルを行うと、pythonファイルが機械語で翻訳されるため実行速度が速くなるケース があります。
下がバイトコンパイル時の基本構文になります。
python -m compileall <対象ファイル>
コンパイルすると「pycace 」ディレクトリに「.pyc」ファイルが作成されています。
実際にコンパイルするサンプルコードになります。
#!/usr/bin/python
# -*- coding: utf-8 -*-
print('Hello World!')
exit()
下がコンパイルとファイルの実行結果です。
# python -m compileall helloWorld.py
Compiling 'helloWorld.py'...
# ls -l
total 4
-rwxr-xr-x. 1 root root 107 Jun 22 00:00 helloWorld.py
drwxr-xr-x. 2 root root 38 Jun 22 00:14 __pycache__
# cd __pycache__/
# ls
helloWorld.cpython-36.pyc
[root@v133-18-196-86 __pycache__]# python helloWorld.cpython-36.pyc
Hello World!
その他、Windows環境の実行ファイル「.exe」 やMac環境の実行ファイル「.app」 に変換させることもできます。
実行ファイル形式に変更しておくことで、pythonが入っていない環境でもpythonのプログラムを動かせます。
[itemlink post_id=“4979”]