Pythonモジュールは、変数、関数、およびクラスを含むPythonスクリプトファイルです。Pythonモジュールは、コードを整理し、他のクラスやPythonスクリプトで参照するのに役立ちます。
Pythonモジュール
A file containing Python definitions and statements is called a python module. So naturally, the file name is the module name which is appended with the suffix .py
. For better understanding let’s create a python module to explore it completely. First create a file named printNumbers.py
with the following contents.
def printForward(n):
#1からnまでを表示する
for i in range(n):
print(i+1)
def printBackwards(n):
#nから1までを表示する
for i in range(n):
print(n-i)
Pythonインタプリタでこのモジュールを以下のコマンドでインポートします。
import printNumbers
このインポートコマンドは、現在のディレクトリとPATH変数の場所でprintNumbers.py
ファイルを探します。ファイルが見つかると、ファイル内のコードが使用可能になります。モジュールの関数にアクセスするためには、以下のようにモジュール名を使用する必要があります:モジュールが大きい場合は、関数の呼び出しを簡略化するために、以下のようにインポートを名前変更することもあります:
Pythonモジュールの特定の関数をインポートする
時には、Pythonモジュールのすべての関数をインポートする必要はありません。1つまたは2つの関数だけが必要な場合もあります。その場合、以下のインポート文のバリエーションを使用することができます。 ここで注意することは、
printForward
をインポートすると、現在のシンボルテーブルに含まれるということです。そのため、printNumbers.printForward()
のように関数を呼び出す必要はありません。別のバリエーションも便利な場合があります。ここでは、関数の使用を簡単にするために、以前に行ったように名前変更を使用しました。また、モジュールが定義するすべての名前をインポートしたい場合は、別のバリエーションがあります。これにより、アンダースコア(
_
)で始まる名前を除くすべての名前がインポートされます。ただし、これは理想的な方法ではありません。これにより、不明な一連の名前がインタプリタに導入されます。
Pythonモジュールに関するFAQ
Pythonモジュールに関してよくある質問について調べてみましょう。
Pythonの組み込みモジュールとは何ですか?
Pythonには多くの組み込みモジュールがあります。重要なものの一部は、collections、datetime、logging、math、numpy、os、pip、sys、およびtimeです。Pythonシェルでhelp('modules')
コマンドを実行すると、利用可能なモジュールのリストが取得できます。
Pythonにおけるモジュールとパッケージの違いは何ですか?
PythonパッケージはPythonモジュールのコレクションです。Pythonモジュールは単一のPythonファイルであり、Pythonパッケージは複数のPythonスクリプトとパッケージの詳細を定義する__init__.py
ファイルを持つディレクトリです。
Pythonモジュールリストはどこで見つけられますか?
Pythonモジュールのリストは、Pythonモジュールインデックスの公式ページから見つけることができます。ただし、利用可能なPythonモジュールのリストを探している場合は、Pythonシェルでhelp('modules')
コマンドを実行して利用可能なモジュールのリストを取得できます。

これらの特定のチュートリアルやサンプルプログラムを通じて、最も重要なPythonモジュールのリストを確認し、学習するために、GitHubリポジトリをご確認ください。
異なるディレクトリからモジュールをインポートする方法は?
Pythonモジュールをインポートしようとすると、現在のディレクトリとPATH変数の場所が検索されます。したがって、Pythonファイルがこれらの場所に存在しない場合、ModuleNotFoundError
が発生します。解決策はsys
モジュールをインポートし、必要なディレクトリをそのパス変数に追加することです。以下のコードは、異なるディレクトリからのインポート時に発生するエラーと、パス変数にそのディレクトリを追加することでエラーを修正する方法を示しています。
$ python3.7
Python 3.7.0 (v3.7.0:1bf9cc5093, Jun 26 2018, 23:26:24)
[Clang 6.0 (clang-600.0.57)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import test123
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'test123'
>>> import sys
>>> sys.path.append('/Users/pankaj/temp')
>>> import test123
>>> test123.x
10
>>> test123.foo()
foo
>>>
Python Modules List
Pythonのモジュールは数千あり、毎日新しいものが開発されています。私たちは多くの人気のあるPythonモジュールについてチュートリアルを書いています。これらのモジュールを学ぶために、以下のテーブルからリンクをたどってください。
参考文献:
Source:
https://www.digitalocean.com/community/tutorials/python-modules