Python3でカスタムモジュールをインポートする3つの方法を詳しく解説
この記事では主にPython3でカスタムモジュールをインポートする3つの方法をサンプルコードを通して詳しく紹介していますので、皆さんの勉強や仕事に役立つ学習価値があります
前書き
私は最近学びました。 Liao Xuefeng のチュートリアルのモジュール セクション。モジュールのカスタマイズ方法について、理解できない場合は、まず基本的な概要を見てみましょう:
モジュール
コンピュータープログラムの開発プロセスでは、より多くのプログラムコードが記述されるにつれて、ファイル内 コードはますます長くなり、保守はますます容易ではなくなります。
保守しやすいコードを記述するために、多くの関数を異なるファイルにグループ化し、各ファイルに含まれるコードが比較的少なくなるように、多くのプログラミング言語はこのコード編成方法を使用しています。 Python では、.py ファイルはモジュールと呼ばれます。
モジュールを使用する利点は何ですか?
最大の利点は、コードの保守性が大幅に向上することです。次に、コードを書くときに最初から始める必要がありません。モジュールを作成すると、他の場所から参照できます。プログラムを作成するとき、Python の組み込みモジュールやサードパーティのモジュールなど、他のモジュールを参照することがよくあります。
モジュールを使用すると、関数名と変数名の競合を回避することもできます。同じ名前の関数と変数が異なるモジュールに存在する可能性があるため、自分でモジュールを作成する場合、名前が他のモジュールと競合することを考慮する必要はありません。ただし、組み込み関数名と競合しないように注意してください。 Python のすべての組み込み関数を表示するには、ここをクリックしてください。
また、別の人が書いたモジュール名が同じだったらどうなるか、と考えているかもしれません。モジュール名の競合を避けるために、Python では、パッケージと呼ばれるディレクトリごとにモジュールを編成する方法が導入されています。
たとえば、ファイル abc.py は abc という名前のモジュールであり、ファイル xyz.py は xyz という名前のモジュールです。
ここで、2 つのモジュール名 abc および xyz が他のモジュールと競合すると仮定します。そのため、競合を回避するためにパッケージを通じてモジュールを整理できます。この方法では、mycompany などのトップレベルのパッケージ名を選択し、それを次のディレクトリに保存します。最上位のパッケージ名が他のモジュールと競合しない限り、すべてのモジュールが他のモジュールと競合しません。ここで、abc.py のモジュール名は mycompany.abc になり、同様に、xyz.py のモジュール名は mycompany.xyz になります。
各パッケージ ディレクトリの下に __init__.py ファイルが存在する必要があることに注意してください。このファイルが存在しない場合、Python はこのディレクトリをパッケージではなく通常のディレクトリとして扱います。 __init__.py 自体はモジュールであり、そのモジュール名は mycompany であるため、__init__.py は空のファイルにすることも、Python コードを含めることもできます。
同様に、複数レベルのディレクトリを使用して複数レベルのパッケージ構造を形成することもできます。たとえば、次のディレクトリ構造は次のとおりです。
§─ web
│ §─ __init__.py│ §─ utils.py
│ └─ www.py§─ __init__.py
§─ abc.py └ ─ xyz .py
ファイル www.py のモジュール名は mycompany.web.www、2 つのファイル utils.py のモジュール名はそれぞれ mycompany.utils と mycompany.web.utils です。
独自のモジュールを作成するときは、名前に注意してください。Python に付属のモジュール名と競合しないようにしてください。たとえば、システムに sys モジュールが付属している場合、モジュールに sys.py という名前を付けることはできません。そうしないと、システムに付属の sys モジュールをインポートできません。
mycompany.web もモジュールです。このモジュールに対応する .py ファイルを指摘してください。
概要
モジュール名は Python 変数の命名規則に従っている必要があり、中国語や特殊文字を使用しないでください。 システム モジュール名と競合しないことが最善です。最初にこのモジュールが存在することを確認します。確認方法は、Python 対話環境で import abc を実行することです。成功した場合、このモジュールはシステムに存在します。
- 専門家による多くのモジュールのオープンソース共有は、みんなの開発をスピードアップします
- についての情報を検索したとき、私はまだ始めたばかりなので、多くの詳細を理解していません。インターネットに関しては、専門家のチュートリアルがあまりにも合理的すぎて、初心者の私がうまく操作するのに非常に苦労する必要があることがわかりました。 だからここに記録してください。
最初の方法は直接インポートすることですここで大前提があります。それは、以下に示すように、py実行ファイルとモジュールが同じディレクトリ(親ディレクトリ)に属しているということです。
main.py と pwcong モジュールは同じ Python ディレクトリにあります
- pwcong フォルダーはモジュールです
私は pwcong モジュールによって提供される関数を __init__.py に書きました。これは 1 つの hi 関数だけを提供します:
# pwcong 模块的 __init__.py # -*- coding: utf-8 -*- def hi(): print("hi")
ファイル main.py を実行してモジュールを直接インポートします:
# main.py # -*- coding: utf-8 -*- import pwcong pwcong.hi()
それから main.py を実行すると、コマンド ライン ウィンドウに「hi」という文が出力され、最初のメソッドが完了します。
モジュールの使用方法は次のとおりです: まず import -> 次に module.variable|function (上記の例の pwcong.hi() など) を入力します
次に、カスタム モジュールのパスをインポートしますsys モジュール
実行可能ファイルとモジュールが同じディレクトリにない場合、現時点では直接インポートではカスタム モジュールを見つけることができません。以下に示すように:
実行ファイルmain.pyはメインディレクトリにあります
pwcongモジュールはPythonディレクトリにあります
sysモジュールはPythonに組み込まれているので、次の手順を実行しますカスタム モジュールをインポートする手順は次のとおりです:
まず sys モジュールをインポートします
次に、
sys.path.append(path)
関数を使用してカスタム モジュールが配置されているディレクトリをインポートしますカスタム モジュールをインポートします。
このとき、main.pyは次のように書かれています:
# main.py # -*- coding: utf-8 -*- import sys sys.path.append(r"C:\Users\Pwcong\Desktop\python") import pwcong pwcong.hi()
最後にmain.pyファイルを実行して、最後にhiを出力します。2番目の方法は完了です。
3 番目の方法は、pth ファイルを通じてカスタム モジュールを見つけることです
この方法の原理は、Python がシステム変数のパスをスキャンして、モジュールに追加できるモジュールをインポートすることです。システムパス。ただし、それでも pth ファイルの追加を使用することをお勧めします。
モジュールと実行可能ファイルのディレクトリ構造は図と同じです:
実行可能ファイルmain.pyはメインディレクトリにあります
pwcongモジュールはPythonディレクトリにあります
module_pwcong.pth ファイルを作成します。内部のコンテンツは、pwcong モジュールが配置されているディレクトリです:
C:UsersPwcongDesktoppython
ここに module_pwcong.pth ファイルを置きます:
Python インストール ディレクトリ Python35Libsite-packages
例、私のもの:
次に、main.py がカスタム モジュールをインポートして使用します:
# -*- coding: utf-8 -*- import pwcong pwcong.hi()
最後に main.py ファイルを実行すると、出力できます。こんにちは、3 番目の方法が完了しました。
以上がPython3でカスタムモジュールをインポートする3つの方法を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









Netflix のアバターは、ストリーミング ID を視覚的に表現したものです。ユーザーはデフォルトのアバターを超えて自分の個性を表現できます。 Netflix アプリでカスタム プロフィール写真を設定する方法については、この記事を読み続けてください。 Netflix でカスタム アバターをすばやく設定する方法 Netflix には、プロフィール写真を設定する機能が組み込まれていません。ただし、ブラウザに Netflix 拡張機能をインストールすることでこれを行うことができます。まず、Netflix 拡張機能のカスタム プロフィール画像をブラウザにインストールします。 Chrome ストアで購入できます。拡張機能をインストールした後、ブラウザで Netflix を開き、アカウントにログインします。右上隅にあるプロフィールに移動し、をクリックします

Win11で背景画像をカスタマイズするにはどうすればよいですか?新しくリリースされた win11 システムには多くのカスタム機能がありますが、多くの友人はこれらの機能の使い方を知りません。一部の友人は、背景画像が比較的単調だと考えており、背景画像をカスタマイズしたいと考えていますが、背景画像をカスタマイズする方法がわかりません。背景画像を定義する方法がわからない場合、エディターは次の手順をまとめています。 Win11 で背景画像をカスタマイズするには、以下をご覧ください。 Win11 で背景画像をカスタマイズする手順: 1. 図に示すように、デスクトップの [勝利] ボタンをクリックし、ポップアップ メニューの [設定] をクリックします。 2. 図に示すように、設定メニューに入り、「個人用設定」をクリックします。 3. 図に示すように、[Personalization] に入り、[Background] をクリックします。 4. 背景設定を入力し、クリックして写真を参照します

ベン図は、セット間の関係を表すために使用される図です。ベン図を作成するには、matplotlib を使用します。 Matplotlib は、対話型のチャートやグラフを作成するために Python で一般的に使用されるデータ視覚化ライブラリです。インタラクティブな画像やグラフの作成にも使用されます。 Matplotlib は、チャートやグラフをカスタマイズするための多くの関数を提供します。このチュートリアルでは、ベン図をカスタマイズするための 3 つの例を説明します。 Example の中国語訳は次のとおりです: Example これは 2 つのベン図の交差を作成する簡単な例です。最初に、必要なライブラリをインポートし、ベンをインポートしました。次に、データセットを Python セットとして作成し、その後「venn2()」関数を使用して

Eclipse でショートカット キーの設定をカスタマイズするにはどうすればよいですか?開発者にとって、ショートカット キーをマスターすることは、Eclipse でコーディングする際の効率を向上させるための鍵の 1 つです。強力な統合開発環境として、Eclipse は多くのデフォルトのショートカット キーを提供するだけでなく、ユーザーが独自の好みに応じてショートカット キーをカスタマイズすることもできます。この記事では、Eclipseでショートカットキーの設定をカスタマイズする方法と具体的なコード例を紹介します。 Eclipseを開く まず、Eclipseを開いて次のように入力します。

CakePHP は、開発者に多くの便利なツールと機能を提供する強力な PHP フレームワークです。その 1 つはページネーションです。これは、大量のデータを複数のページに分割し、閲覧と操作を容易にするのに役立ちます。デフォルトでは、CakePHP はいくつかの基本的なページネーション メソッドを提供しますが、場合によってはカスタムのページネーション メソッドを作成する必要がある場合があります。この記事では、CakePHP でカスタム ページネーションを作成する方法を説明します。ステップ 1: カスタム ページネーション クラスを作成する まず、カスタム ページネーション クラスを作成する必要があります。これ

iPhone の iOS 17 アップデートは、Apple Music にいくつかの大きな変更をもたらします。これには、プレイリストで他のユーザーとコラボレーションしたり、CarPlay を使用してさまざまなデバイスから音楽再生を開始したりすることが含まれます。これらの新機能の 1 つは、Apple Music でクロスフェードを使用できる機能です。これにより、トラック間をシームレスに移行できるようになり、複数のトラックを聴く場合に優れた機能になります。クロスフェードは全体的なリスニング体験を向上させるのに役立ち、トラックが変わったときに驚いたり、体験から脱落したりすることがなくなります。この新機能を最大限に活用したい場合は、iPhone での使用方法を次に示します。最新の情報が必要な Apple Music のクロスフェードを有効にしてカスタマイズする方法

CodeIgniter でカスタム ミドルウェアを実装する方法 はじめに: 最新の Web 開発では、ミドルウェアがアプリケーションで重要な役割を果たします。これらは、リクエストがコントローラーに到達する前または後に、共有処理ロジックを実行するために使用できます。 CodeIgniter は、人気のある PHP フレームワークとして、ミドルウェアの使用もサポートしています。この記事では、CodeIgniter でカスタム ミドルウェアを実装する方法を紹介し、簡単なコード例を示します。ミドルウェアの概要: ミドルウェアは一種のリクエストです

Vue は、開発者がインタラクティブなフロントエンド アプリケーションを構築するのに役立つ多くの便利な関数と API を提供する人気の JavaScript フレームワークです。 Vue3 のリリースに伴い、レンダリング機能が重要なアップデートになりました。この記事では、Vue3 のレンダリング関数の概念と目的、およびそれを使用してレンダリング関数をカスタマイズする方法を紹介します。レンダリング関数とは何ですか? Vue ではテンプレートが最も一般的に使用されるレンダリング方法ですが、Vue3 では別の方法を使用できます。
