Python拡張機能の違い

拡張子名

Pythonプログラムを作成する場合、一般的な拡張機能はpy、pycですが、実際には他にもいくつかの拡張機能があります。以下は、いくつかの拡張機能の使用法です。

py

pyは最も基本的なソースコード拡張です

pyw

pywは別のソースコード拡張機能です。pyとの唯一の違いは、ウィンドウの下でpyw拡張機能のソースコードをダブルクリックすると、pythonw.exeが呼び出されてソースコードが実行されることです。この実行メソッドにはコマンドラインウィンドウがありません。これは主に、GUIプログラムのリリース時にコンソール情報を表示する必要がない場合に使用されます。

pyc

pythonコードを実行すると、同じ名前のpycファイルが同じディレクトリに自動的に生成されることがよくあります。これは、pythonソースコードからコンパイルされたバイトコードです。通常、コードで参照されているpyファイルのpycファイルは、コードの実行時に自動的に生成されます。このファイルは直接実行でき、テキストエディタで開いたときにソースコードが表示されません。

pyo

pyoは、pycに似た最適化されたエンコードファイルです。

pyd

Pydはpythonプログラムから生成されませんが、pythonで呼び出すことができるC ++で記述された動的リンクライブラリなど、pythonで呼び出すことができる他の言語で記述された拡張機能です

プログラムリリースの選択

例としてWindowsプラットフォームを取り上げます

通常の実行可能プログラムとしてパッケージ化

プログラムを公開したい場合、最も一般的な方法は、exeプログラムにパッケージ化することです。パッケージ化の利点は、ユーザーがPythonのオペレーティング環境を考慮する必要がなく、アクセスも簡単なことです。

苦しむ。ただし、悪い点は、一般的にパッケージ化されたプログラムが比較的大きく、モジュールパッケージ化に依存しているため、互換性の問題が発生する可能性があることです。

一般的に使用されるパッケージモジュールはpyinstallerです。一般的に使用されるパッケージングコマンドは次のとおりです。

pyinstaller -F example.py

さらに、コンソールウィンドウを必要としないGUIプログラムの場合は、-wパラメーターを追加することもできます。

pyinstaller -w -F example.py

コンパイルされたpyc / pyoを公開する

ユーザーがpython環境を使用していて、ソースコードを表示したくない場合は、pyc / pyoファイルを公開することを選択できます。

直接実行されたpyファイルは自動的にpycを生成しないため、手動でコンパイルする必要があります。単一ファイルのコンパイル:

import py_compile
py_compile.compile(r'c:\test.py')

フォルダーのコンパイル:

import compileall
compileall.compile_dir(dirpath)

pyoにコンパイルします。

python -O -m py_compile file.py

コンソールウィンドウを必要としないGUIプログラムの場合は、新しいpywファイルを作成してメインのpycプログラムを呼び出すことができます。 pywにpycプログラムをインポートするだけで済みます。

ソースpyをリリース

リリースソースコードは通常、オープンソースプロジェクトで使用されます。説明するものはありません。相手が環境を持っている限り、pyファイルを直接送信するだけで実行できます

Recommended Posts

Python拡張機能の違い
javaとpythonの構文の違い
pythonとpycharmの違いは何ですか
python2.xとpython3.xの違い
CentOS7とCentOS6の違い
同期Pythonと非同期Pythonの違いは何ですか?
CentOSとUbuntuの違い
CentosとRedhatの違いとつながり
pythonスクリプトとWebページの違いは何ですか
2.1 Pythonインタープリター(pythonインタープリター)
Pythonの基盤を統合する(2)
LinuxシステムにおけるCentOSとUbuntuの違い
Pythonの基盤を統合する(4)
pythonはゲームという言葉を推測します
Python(6)の基盤を統合する
Ubuntuは最新のPython3をインストールします。
Pythonは推測ゲームを実現します
Python(5)の基盤を統合する
Pythonの基盤を統合する(3)
Pythonは実店舗のゲームを実装しています
centos7とcentos6の違い(カーネル、コマンドなど)の最初の理解
pythonでのwheelの使用法
Pythonがメール機能を実装する方法
pythonはどのように環境を変えますか
C ++を使用してPython3拡張機能を作成する
Pythonは中国語の4つの車輪を処理します
Python3はシングルトンデザインパターンを実装しています
pythonプログラムを保存する方法
地主取引のPythonシミュレーション
Pythonの用途は何ですか
Pythonの数字は何ですか?
Pythonは最も急な降下方法を実装します
Pythonは実際の銀行システムを実装しています
Pythonのモジュールについて話す
Python文字列プーリングの前提
Python3.8の新機能の秘密
Pythonがタイマー機能を実装する方法
pythonモジュールを表示する方法
Pythonは航空機戦争プロジェクトを実装します
Pythonの父がMicrosoftに加わる
python accesshdfsの操作
pythonでのタプルの使用法
pythonを実行するメソッドを終了します