Pythonに取り組んでいると、すぐにモジュールの概念に出会うでしょう。これにより、コードを構造化し、再利用可能な関数を作成することができます。秩序を改善するだけでなく、プログラミングの効率も向上します。このチュートリアルでは、Pythonでモジュールを作成し、インポートする方法を学びます。さまざまな数学的関数を提供する独自のファイルを作成し、それを他のPythonスクリプトで使用する方法を見ていきましょう。
主なポイント
- モジュールは、さまざまな関数を含む単純なPythonファイルです。
- モジュールをインポートすることで、コードの構造が向上します。
- モジュールを異なる名前でインポートすることや、特定の関数のみをインポートすることができます。
- エイリアス名と選択的インポートを使用することで、名前の競合を回避できます。
ステップバイステップガイド
モジュールの作成
Pythonでモジュールを作成するには、まず関数を含むファイルが必要です。例として、加算、減算、乗算などの基本的な数学関数を含むarithmetik.pyという名前のファイルを作成します。任意のテキストエディタでファイルを作成できます。

arithmetik.pyで、各関数を定義します:
def subtrahieren(a, b): return a - b
def multiplizieren(a, b): return a * b
ここに、後で主スクリプトで使用する3つの簡単な関数があります。
モジュールのインポート
モジュールarithmetik.pyを作成したので、他のスクリプトで使用できます。同じディレクトリにrechner.pyという名前の2番目のファイルを作成します。

rechner.pyで、次のコマンドでモジュールをインポートします:
これにより、モジュールの関数にアクセスできるようになります。デモンストレーションのためにいくつかの変数を定義します:
これで、たとえば加算関数を呼び出して結果を出力できます:
この行は、aとbの加算の結果を出力します。スクリプトを実行すると、「17」という出力が表示されるのがわかります。
エイリアス名の使用
モジュールを短い名前でインポートしたい場合も可能です。次のようにします:
これで、arというエイリアスを使用して関数を呼び出すことができ、コードが少し短くなります:
名前が異なっても、すべては通常通りに機能します。これは好みの問題です。

関数の選択的インポート
時には、モジュール内のすべての関数が必要ではありません。インポートする関数を選択することができます。次の構文を使用します:
これで、モジュール名を指定することなくaddieren関数を直接使用できます。
したがって、addieren(a, b)を呼び出すと、オートコンプリートが他の関数を含めることなく直接提供します。
名前の競合を解決する
エイリアス名と選択的インポートのもう一つの利点は、名前の競合を回避することができる点です。同じ名前のモジュールが外部ライブラリと同じ名前を持つ場合でも、関数を使用できます。
もし、モジュールarithmetik.pyが数学モジュールmath.pyと同じ名前を持っている場合、競合が発生します。しかし、エイリアスを使用するか、選択的インポートを行うことで、これを回避できます。

モジュールとインポートの締めくくり
これまでに見たように、モジュールはPythonプログラミングの重要な要素です。コードをモジュラにし、再利用可能にするのに役立ちます。インポートとさまざまなインポート方法は、スクリプト内の関数へのアクセスに柔軟性と制御を与えます。
要約 - Pythonモジュールの使用とインポートの基本
このチュートリアルでは、簡単なPythonモジュールを作成、インポート、および使用する方法を学びました。コードの構造化の重要性は、モジュールとさまざまなインポート方法によって明確になります。これにより、プログラミングをより効果的に行うことができます。
よくある質問
Pythonのモジュールとは何ですか?モジュールは、他のPythonスクリプトで使用できる関数、クラス、および変数を定義したPythonファイルです。
モジュールをどのようにインポートしますか?modulnameというコマンドを使用してファイルをインポートできます。
import modulとfrom modul import funktionの違いは何ですか?最初のコマンドはモジュール全体をインポートしますが、2番目のコマンドは特定の関数のみをインポートします。
名前の競合をどのように避けることができますか?エイリアス名を使用するか、選択的に関数をインポートすることで、他のモジュールとの競合を回避できます。