4つの形式のモジュール
モジュール
(ファイル名はtest.pyあり、その対応するモジュール名はテストです)、本質的の.py Pythonのファイルを終了し、論理的に整理Pythonコード(機能の実現変数、関数、クラス、ロジック)があります
パッケージ
論理的にはコンポーネントのモジュールのために、基本的にディレクトリです(持っている必要があります__init__.py
ファイル)
インポートモジュール
本質は再びpythonのファイルを、それを説明することです
インポートパッケージ
紙は、本質的に行われている__init__.py
パッケージは、次のパッケージから、その後、インポートする必要があります:あなたはモジュール次のパッケージをインポートしたい場合は、ファイル__init__.py
モジュールパッケージファイルに再導入します
Pythonは、携帯電話として見ることができます - >スチュワードアプリケーションとしてピップ - >モジュールは、アプリケーションソフトウェアです
1.システムは、ソフトウェアに付属している - 「インストールする必要はありません。
2.ソフトウェアをダウンロードする必要が
3.カスタムソフトウェア
ビルトインモジュール1.python:Pythonインタプリタのアクティベーション自身の時間/ランダム/ OS / SYSの
モジュール2.pipがインストールされ、インストールjiebaのPIP
3カスタムモジュール- 「カスタムコード
4.パッケージ(モジュール) - 」未来詳細に話します
輸入与のfrom..import ..
インポート
時間とともに、例えば:
インポート時
1.開いているメモリ空間、時間指定されたメモリ空間
のすべてのコードに読み取られる2. time.pyをした後、実行
時モジュールによって時間の方法3.。メソッド名を使用
#test.py
import time
import time as t #变量名t指向time模块的名称空间
from time import sleep
from time import sleep,localtime
長所:決して競合
欠点:それぞれが非常に面倒、文字のカップルよりも多くを輸入
...インポート...
例えば、時間の睡眠で
時間インポートスリープから
1.メモリ空間、時間指定されたメモリ空間
のすべてのコードに読み取られる2 time.pyを、次に実行
睡眠()メソッドは、インポートとからインポートを読み取り、したがってメソッド名として使用されてもよい3.
# *__all__=['']
#test.py
__all__ = ['f1','f2']
def f1():
print(1)
def f2():
print(2)
def f3():
print(3)
from test import *
test.f3() #无法运行
import test
test.f3() # 3
長所:以下、いくつかの文字の演奏
短所を:簡単な競合を
循環のインポート
#m1.py
from m2 import y
x = 10
print('m1:',x,y)
#m2.py
from m1 import x
y = 20
print('m2:',x,y)
プロセス: m1.py - > m2.py - > m1.py ...
結果: X / Yは、このプロセスで生成されていません
ソリューション
#m1.py
x = 10
from m2 import y
print('m1:',x,y)
#m2.py
y = 20
from m1 import x
print('m2:',x,y)
# m2: 10 20
# m1: 10 20
# m2: 10 20
プロセス: m1.py - > m2.py - - > 20 10> m1.py - - > 10 = X 20>図20は、10であります
ソリューション2
# m1.py
def f1():
from m2 import y
print(y)
x = 10
# m2.py
def f1():
from m1 import x
y = 20
# y = 20
処理: F1() - > m2.py - > Y = 20であります
4.経路探索モジュール
メモリを探し始めます
from m2 import y print(y) import time time.sleep(10) # 10s内删除了m2 from m2 import y print(y)
そして、ビルトインから探します
from time import time print(time)
そして、カスタムから探し
x = 10
最後に、環境変数を探し
二つは、Pythonのファイルを使用しています
モジュールファイルとして、モジュールは、複数を持つことができます
実行ファイルとして、唯一の実行可能ファイル
# m1.py
x = 10
if __name__ == '__main__':
print(x)
# m2.py
import m1
if __name__ == '__main__':
pycharm内のコードだけで言葉遊びのために言葉を必要としない、メインタブは、その後出て遊ぶことができるようにしたいです
M1を実行する場合__name__ == '__main__'
には、出力xます
平方メートルの時間を実行することは__name__ != '__main__'(if条件不成立)
与えられています