Pythonファイルをコンパイルすると、*。pycファイルが取得されます。それを実行しようとすると、それらを実行するプログラムがないというメッセージが表示されます。そのオプションを使用してオンラインでプログラムを検索すると、何もありませんと表示されます。誰も私がそこにファイルを実行するのを手伝ってもらえますか?
Pythonファイルをコンパイルすると、*。pycファイルが取得されます。それを実行しようとすると、それらを実行するプログラムがないというメッセージが表示されます。そのオプションを使用してオンラインでプログラムを検索すると、何もありませんと表示されます。誰も私がそこにファイルを実行するのを手伝ってもらえますか?
回答:
Pythonファイルはバイトコンパイルされているため、Pythonインタープリターを使用して実行する必要があります。
python yourfile.pyc
.pyファイルを直接実行できる理由は、次の行があるためです。
#!/usr/bin/python
または
#!/usr/bin/env python
または.pyファイルの最初の行に類似したもの。これは、Pythonインタープリターでファイルの残りを実行するようシェルに指示します。
Pythonは.pyファイルをコンパイルし、それを.pycファイルとして保存して、後続の呼び出しで参照できるようにします。.pycには、Pythonソースファイルのコンパイル済みバイトコードが含まれています。これは、Pythonインタープリターがソースをコンパイルする先です。このコードは、Pythonの仮想マシンによって実行されます。それらを削除しても問題はありません(.pyc)が、多くの処理を行っている場合はコンパイル時間を節約できます。
Pythonは、コンパイルされた言語とは対照的に、インタプリタ言語です。ただし、バイトコードコンパイラが存在するため、区別がぼやけている場合があります。コンパイルとは、通常、マシンコードに変換することを意味し、これが最速で実行されます。しかし、インタプリタは人間が読めるテキストを受け取って実行します。彼らは中間段階でこれを行うことができます。
たとえば、myprog.pyソースファイルを実行すると、pythonインタープリターはまず、myprog.pyc
存在するかどうか(バイトコードコンパイルされたバージョンmyprog.py
)、およびが最新かどうかを確認しmyprog.py
ます。その場合、インタープリターはそれを実行します。存在しない場合、またはmyprog.py
それよりも新しい場合(ソースファイルを変更した場合)、インタープリターは最初にコンパイルしますmyprog.py
しmyprog.pyc
ます。
上記の例には1つの例外があります。#! /usr/bin/env python
の最初の行に配置する場合はmyprog.py
、実行可能にしてから、myprog.py
単独で実行します。
pyc
ファイルが存在する理由の良い説明ですが、ファイルの実行方法に関する質問には答えていません。回答ではなく、非常に拡張されたコメントとして修飾できます。投稿を編集して実際の回答を追加してください。