Python学習[モジュール]

序文

前回の記事Python学習【ディープコピー】ではPythonの深いコピー学習内容と浅いコピー学習内容について学びましたが、この記事では引き続き学習していきます。Pythonのモジュール

モジュールとは何ですか

Pythonではファイル(拡張子「.py」が付いたファイル)をモジュールと呼び、Pythonでは各モジュールを独立したファイルとして扱います。

モジュールは、プロジェクト内の他のモジュール、一部のスクリプト、さらには対話型パーサーによって使用できます。モジュールは、他のプログラムから参照して、モジュール内の関数やその他の関数を使用できます。この方法は、Python の標準ライブラリを使用する場合にも使用されます。

Python の一般的なシステム組み込みモジュールは次のとおりです。

os モジュール: os モジュールには一般的なオペレーティング システム関数が含まれています
sys モジュール: Python オペレーティング環境に関連する一連の変数と関数を提供します
Random モジュール: Random モジュールは乱数の生成に使用されます
time モジュール: 主に含まれています日付と時刻の関数を提供するさまざまなクラスと関数
datetime モジュール: 時刻モジュールの高度なカプセル化
shutil モジュール: 高レベルのファイル操作ツール
ロギング モジュール: 標準出力にログを出力します
re モジュール: 目的を達成するために直接呼び出すことができます通常のマッチング
pymysql モジュール: データベースに接続し、簡単な追加、削除、変更、およびクエリ スレッドを実装しますモジュール: より強力なマルチスレッド管理ソリューションを提供します
キュー モジュール: マルチプロデューサー、マルチコンシューマー キューを実装しますjson モジュール: 変換に使用されます文字列とデータ型の間の json

モジュールのインポート

Python でモジュールをインポートする方法は次のとおりです。

import  模块名称  [as别名]
from  模块名称 import  函数/变量/类

例えば:

インポートモジュール名 [エイリアスとして]

# 例子1  导入数学运算模块  math
import math
print(math,id(math),type(math))
print(math.pi)  #返回一个浮点数 3.141592653589793,表示圆周率。
print('------------------进行math模块中相关函数的使用-----------/')
print(dir(math))
print('pow()函数的使用',math.pow(2,3),type(math.pow(2,3)))  #2的3次方
print('向上取整',math.ceil(3.00001))  #向上取整  4
print('向下取整',math.floor(3.99999))   #向下取整3

ここに画像の説明を挿入します

モジュール名からインポート関数/変数/クラス

# 只引入math模块中的pi
from math  import  pi
print(pi)   #3.141592653589793

このメソッドを使用してモジュールを導入するときは、モジュールに pi 定数をインポートしていることに注意する必要があります。この時点で数学モジュールに他の関数を導入すると、プログラムはエラーを報告します。

ここに画像の説明を挿入します

from math  import  pi
# 尝试引入pow()函数
print(pow(2,3),type(pow(2,3)))  #8 <class 'int'> 

インポートされていない数学関数を導入しようとすると、戻り値も存在することがわかりますが、ここでの pow() 関数は数学モジュール内の関数ではなく、その出力タイプは int です。 math モジュールでは pow の代わりに type 関数の出力型は float であるため、戻り値は表示されますが、math モジュールでは pow() 関数は呼び出されません。

ここに画像の説明を挿入します

カスタムモジュール

Python のモジュールが何であるかを理解したら、モジュールをカスタマイズできます。

カスタム モジュールは、Python ファイルに簡潔で意味のあるファイル名を付けます。

ここに画像の説明を挿入します

定义了一个cal模块
def  add(a,b):
    return  a+b
def  div(a,b):
    return a/b

次に、カスタム モジュールをインポートします。

# 引入新建的cal模块
import  cal
print(cal.add(10,30))
print(cal.div(10,20))

# 只导入cal模块中的add函数
from cal import add
print(add(10,20))

ここに画像の説明を挿入します

メインプログラムを実行する

在每个模块的定义中都包括一个模块名称的变量 __name__ ,变量的值是__main__。プログラムはこの変数を調べて、どのモジュールで実行されているかを判断できます。モジュールが別のプログラムにインポートされていない場合は、インタープリタの最上位モジュールで実行されている可能性があります。

モジュール cal2 をカスタマイズします
ここに画像の説明を挿入します
。index1.py にインポートします
ここに画像の説明を挿入します
。index1 のファイルを実行すると、操作の結果、cal2 も実行されることがわかります。これは、cal2 がindex1 によってインポートされた後に実行されることを意味します。インデックス 1 も実行するとき、実行するプログラムを指定したい場合はどうすればよいでしょうか?

これには、cal2 モジュールにコードを実行するメイン プログラムを追加する必要があります。

def  add(a,b):
    return a+b
# 直接运行导入cal2的指定文件   只有点击运行cal2这个文件时才能运行如下语句
if __name__ =='__main__':
    print(add(10,30))

ここに画像の説明を挿入します
これにより、モジュールがインポートされた後に新しいファイルと同時に実行されることがなくなります。

1記事につき1文

学習は生涯にわたる能力です。
不備がある場合は、修正していただきありがとうございます。

おすすめ

転載: blog.csdn.net/weixin_64122448/article/details/132925058