[訳]The Python Tutorial#Using the Python Interpreter
3973 ワード
[訳]The Python Tutorial#Using the Python Interpreter
2.1 Invoking the Interpreter
Python解釈器は通常、ターゲットマシンの
Pythonインタプリタを起動[1].Pythonのインストールパスはオプションなので、他のディレクトリも可能です.Pythonのインストールユーザーまたはシステム管理者に問い合わせて確認できます.(たとえば、
Windowマシンでは、Pythonは通常
プライマリ・プロンプトの後にファイル・エンド・レター(Unixでは
インタプリタの行編集プロパティは、行単位の読み取りシステムをサポートするインタラクティブな編集、履歴置換、およびコード補完を含む.コマンドライン編集がサポートされているかどうかを検出する最も速い方法は、Python解釈器の最初のプロンプトに
Python解釈器はUnix shellと似ています.接続端末装置が標準入力を使用する場合、解釈器はインタラクティブにコマンドを読み取り、実行します.ファイル名パラメータまたはファイルを標準入力として使用すると、解釈器はファイルからスクリプトを読み込み、実行します.
Pythonインタプリタを起動する別のコマンドは、shellの-cオプションのようなコマンドラインで文を直接実行できる
一部のPythonモジュールはスクリプトとしても役立ちます.これらのモジュールは、コマンドラインに完全なパス名呼び出しを入力するようにmoduleのソースファイルを実行する
スクリプトファイルを実行する場合、スクリプトを実行した後にインタラクティブモードに入る必要がある場合があります.しかしスクリプトの前に-iを付けて実現する.
Command line and environmentには、すべてのコマンドラインオプションについて説明されています.
2.1.1 Argument Passing
解釈器によってスクリプトが実行されると、スクリプト名およびその後の追加のパラメータは文字列リストとなり、
2.1.2 Interactive Mode
コマンドが端末から読み出されると、解釈器はインタラクティブモードにあります.このモードでは、主プロンプトを使用して次のコマンドの入力をプロンプトします.通常、3つ以上の記号(
複数行構造を入力するには、後続の行が必要です.例に示すようにif文を観察します.
インタラクティブモードの詳細については、Interactive Modeを参照してください.
2.2 The Interpreter and Its Environment
2.2.1 Source Code Encoding
デフォルトでは、PythonソースファイルはUTF-8でエンコードされます.この符号化を使用すると、世界のほとんどの言語の文字を文字列定数、識別子、コメントで同時に使用できます.標準ライブラリ識別子はASCII文字のみを使用していますが、これは移植可能なコードに従うべき約束です.すべての文字を正しく表示するには、エディタはUTF-8を使用してファイルを読み取り、サポートファイル内のすべての文字のフォントを使用する必要があります.
ファイルの最初の行に特殊な注釈行を追加すると、ファイルに異なる符号化方法を指定できます.構文は次のとおりです.
ここのencodingはPythonがサポートする有効な符号化でなければなりません
たとえば、Windows-1252の使用を宣言するには、ソースファイルの最初の行は次のようにします.
最初の行のルールには例外があります.つまり、ソースコードがUNIX「shebang」lineで開始されます.この場合、符号化宣言は2行目に追加されるべきであり、例えば、
Footnotes
[1]UnixではPython 3.x解釈器は実行可能な名前
2.1 Invoking the Interpreter
Python解釈器は通常、ターゲットマシンの
/usr/local/bin/python3.6
ディレクトリの下にインストールされる./usr/local/bin
をUnix shellの検索パスに設定すると、次のコマンドが使用できます.python3.6
Pythonインタプリタを起動[1].Pythonのインストールパスはオプションなので、他のディレクトリも可能です.Pythonのインストールユーザーまたはシステム管理者に問い合わせて確認できます.(たとえば、
/usr/local/python
は一般的なオプションディレクトリです.)Windowマシンでは、Pythonは通常
C:\Python36
ディレクトリにインストールされていますが、インストール中にインストール経路を変更することもできます.DOSに次のコマンドを入力して、インストールディレクトリを環境変数に追加できます.set path=%path%;C:\python36
プライマリ・プロンプトの後にファイル・エンド・レター(Unixでは
Control-D
、WindowsではControl-Z
)を入力すると、解釈器が0の状態で終了します.機能しない場合は、quit()
コマンドを使用して解釈器を終了できます.インタプリタの行編集プロパティは、行単位の読み取りシステムをサポートするインタラクティブな編集、履歴置換、およびコード補完を含む.コマンドライン編集がサポートされているかどうかを検出する最も速い方法は、Python解釈器の最初のプロンプトに
Control-P
を入力し、コンピュータがビープ音を出すと、コマンドライン編集をサポートすることである.付録Interactive Input Editing and History Substitutionを参照して、キーの説明を取得します.何も起こらなかったり、^P
が出力を繰り返したりした場合、コマンドライン編集はサポートされません.現在の行の文字は、チェックアウトキーを使用してのみ削除できます.Python解釈器はUnix shellと似ています.接続端末装置が標準入力を使用する場合、解釈器はインタラクティブにコマンドを読み取り、実行します.ファイル名パラメータまたはファイルを標準入力として使用すると、解釈器はファイルからスクリプトを読み込み、実行します.
Pythonインタプリタを起動する別のコマンドは、shellの-cオプションのようなコマンドラインで文を直接実行できる
python -c command [arg]...
です.Python文には通常、スペースまたはshellに対する他の特殊な文字が含まれているため、コマンド全体を引用符で参照することを推奨します.一部のPythonモジュールはスクリプトとしても役立ちます.これらのモジュールは、コマンドラインに完全なパス名呼び出しを入力するようにmoduleのソースファイルを実行する
python -m module [args]..
を使用して呼び出すことができる.スクリプトファイルを実行する場合、スクリプトを実行した後にインタラクティブモードに入る必要がある場合があります.しかしスクリプトの前に-iを付けて実現する.
Command line and environmentには、すべてのコマンドラインオプションについて説明されています.
2.1.1 Argument Passing
解釈器によってスクリプトが実行されると、スクリプト名およびその後の追加のパラメータは文字列リストとなり、
sys
モジュールのargv
変数に割り当てられる.このリストには、import sys
を実行することによってアクセスできます.このリストの長さは少なくとも1である.スクリプトとパラメータが指定されていない場合、sys.argv[0]
は空の文字列です.スクリプト名が'-'
の場合(標準入力を示す)の場合、sys.argv[0]
は'-'
に設定される.-cコマンドが使用されている場合、sys.argv[0]
は-c
に設定される.-mモジュールが使用されている場合、sys.argc[0]
はローカルモジュールのフルネームに設定される.-cコマンドまたは-mモジュールの後のオプションはPythonソルバのオプション処理機構によって切り取られることなく、sys.argv
にコマンドまたは-mモジュールの後のオプションを入れるモジュール処理.2.1.2 Interactive Mode
コマンドが端末から読み出されると、解釈器はインタラクティブモードにあります.このモードでは、主プロンプトを使用して次のコマンドの入力をプロンプトします.通常、3つ以上の記号(
>>>
)が使用されます.従属プロンプトを使用して連続行の入力をプロンプトします.デフォルトでは、3つのカンマ(...
)が使用されます.プロセッサが起動すると、最初のプロンプトを印刷する前に、バージョン番号と著作権プロンプトで始まる歓迎文が印刷されます.$ python3.6
Python 3.6 (default, Sep 16 2015, 09:25:04)
[GCC 4.8.2] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
複数行構造を入力するには、後続の行が必要です.例に示すようにif文を観察します.
>>> the_world_is_flat = True
>>> if the_world_is_flat:
... print("Be careful not to fall off!")
...
Be careful not to fall off!
インタラクティブモードの詳細については、Interactive Modeを参照してください.
2.2 The Interpreter and Its Environment
2.2.1 Source Code Encoding
デフォルトでは、PythonソースファイルはUTF-8でエンコードされます.この符号化を使用すると、世界のほとんどの言語の文字を文字列定数、識別子、コメントで同時に使用できます.標準ライブラリ識別子はASCII文字のみを使用していますが、これは移植可能なコードに従うべき約束です.すべての文字を正しく表示するには、エディタはUTF-8を使用してファイルを読み取り、サポートファイル内のすべての文字のフォントを使用する必要があります.
ファイルの最初の行に特殊な注釈行を追加すると、ファイルに異なる符号化方法を指定できます.構文は次のとおりです.
# -*- coding: encoding -*-
ここのencodingはPythonがサポートする有効な符号化でなければなりません
たとえば、Windows-1252の使用を宣言するには、ソースファイルの最初の行は次のようにします.
# -*- coding: cp-1252 -*-
最初の行のルールには例外があります.つまり、ソースコードがUNIX「shebang」lineで開始されます.この場合、符号化宣言は2行目に追加されるべきであり、例えば、
#!/usr/bin/env python3
# -*- coding: cp-1252 -*-
Footnotes
[1]UnixではPython 3.x解釈器は実行可能な名前
python
でインストールされておらず、同時にインストールされないPython 2である.x競合.