ゼロからPython(六):関数、モジュールとクラスの使用を学ぶ

4814 ワード

この章から、私たちはsublimeテキストコンパイラを使用して符号化していません.主に私たちが実行するたびにコマンドラインに行ってpyhon***.pyコマンドを実行して結果を見なければなりません.操作が面倒です.Pycharm(具体的なインストールはチュートリアルのみんなの娘を使用すればいいです).pythonエースコンパイラを使用することをお勧めします.
Python関数
定義#テイギ#
関数は組織され、再利用可能で、単一または関連機能を実現するためのコード断片である.関数は応用モジュール行を高め、コード論理をより明確にすることができる.
ビルド関数
組み込み関数はPythonに付属し、ユーザーが繰り返し使用できる単一機能の関数である.例えば、私たちがよく使うprint関数は、組み込み関数に属する.
カスタム関数
Pythonでは内蔵関数のほか、最も多く使われているのはカスタム関数です.私たちのコード機能に基づいて、コードを独立した機能関数に切断することができます.それから、必要な場所で直接呼び出せばいいです.カスタム関数には以下のルールがあります.
  • 関数コードブロックはdefで始まる、関数名と()
  • が続く.
  • 関数のパラメータは()の
  • に配置されます.
  • 関数コードの最初の文は、関数の説明
  • のための文書文字列を使用することができる.
  • 関数の内容はすべて:開始し、
  • インデントします.
  • returnは終了関数で、関数の値を返すために使用されます.もちろん、関数が値を返す必要がない場合は、
  • と書かなくてもいいです.
    完全な例を見てみましょう
    def maxNum(a,b):
        """
                ,       
        :param a:
        :param b:
        :return:
        """
    
        if a>=b:
            return a
        else:
            return b
    

    上記の例では、maxNumという名前のカスタム関数をカスタマイズしました.彼の機能は2つの値を入力することであり、より大きな値を返します.
    関数の呼び出し
    関数を定義したら、もちろん使用する必要があります.関数呼び出しも非常に簡単です.彼のメソッド名を呼び出すだけでいいです.他の関数で呼び出すこともできます.次の例を直接呼び出すこともできます.
    def maxNum(a,b):
        """
                ,       
        :param a:
        :param b:
        :return:
        """
    
        if a>=b:
            return a
        else:
            return b
    
    
    
    
    def readNum():   #       maxNum  
        a=101
        b=102
    
        m=maxNum(a,b)
        print m
    
    
    
    m=maxNum(101,102)   #    
    print m
    

    上記の例は直接実行会で、システムは直接一番下のコードを呼び出し、出力102、
    関数のインポート
    場合によっては、test.pyモジュールの関数maxNumを新規作成し、fast.pyモジュールを新規作成します.fast.pyモジュールでtest.pyモジュールのmaxNum関数を使用する場合は、import testを使用してtest.pyモジュールをインポートする必要があります.
    pyファイルはモジュールを表します!!!
    例を挙げます.
    test.pyモジュールコード
    #coding=utf-8
    
    
    def maxNum(a,b):
        """
                ,       
        :param a:
        :param b:
        :return:
        """
    
        if a>=b:
            return a
        else:
            return b
    

    fast.pyモジュールコード
    #coding=utf-8
    
    import test    #   ...        ,       .     
    from test import *  #   ...     from     ,    import          
    
    def fast():
        a=200
        b=300
    
        m=test.maxNum(a,b)   #      ,        ,      
        m=maxNum(a,b)   #      ,        
    
        print m
    

    私たちはfast.pyファイルの呼び出し方法を真剣に見て、主に2種類あって、importとfrom..import、2種類の違いはすべて例の中で説明して、みんなは自分でもっと体得することができます.
    Pythonのクラス
    Pythonはオブジェクト向けの言語で、javaやocと同じように、クラスをオブジェクトに分類します.オブジェクト向けの言語に触れたことがない場合は、関連する知識を探して補う必要があるかもしれません.以下、簡単に説明します.
    クラスの定義
    クラスは、同じタイプまたは属性メソッドを持ついくつかの集合を記述するために使用され、クラスのインスタンスをオブジェクトと呼びます.次に、例を挙げて理解します.
    例えば、年齢、身長、性格などの属性を定義したり、水を担いだり、薪を切ったりする技能もあるかもしれません.母親が人を産んだとき(クラスの例に相当)、実際のオブジェクトを得ることができます.このオブジェクトには前述の属性が与えられています.
    クラスのいくつかの概念
  • クラス変数、(グローバル変数とも呼ばれる)クラスの変数はオブジェクトに共通であり、クラス変数はクラス関数以外に定義され、クラス変数は通常インスタンスオブジェクトとして使用されない.
  • クラス関数、(クラスメソッドとも呼ばれる)クラスで定義された関数は、一般に一定の機能
  • を含む.
  • メンバー変数(ローカル変数とも呼ばれる)メンバー変数の一般的なアクティビティ範囲は、1つの関数のうち
  • に限定される.
  • 継承:派生クラス(derived class)がベースクラス(base class)を継承するフィールドとメソッドです.継承により、派生クラスのオブジェクトをベースクラスオブジェクトとして扱うことも可能になります.たとえば、DogタイプのオブジェクトがAnimalクラスから派生し、これがシミュレーション「(is-a)」関係(例図、DogはAnimal)です.
  • メソッド書き換え:親から継承されたメソッドがサブクラスの要件を満たすことができない場合は、メソッドの書き換えとも呼ばれるメソッドのオーバーライド(override)を書き換えることができます.
  • カスタムクラス
    classキーを使用して、メソッド名を受け取って例を作成します.
    class student():
        """
              
        """
    
        def read(self):
            """
                
    
            """
            print 'read'
    

    上にstudentのクラスを作成しました.クラス関数readがあります.クラス名.docで関数の説明(つまり、二重三引用符部分の内容)を表示できます.
    selfキーワード
    上記で作成したクラスの例では、read関数のselfの意味を疑う可能性があります.次に、selfは現在のクラスの例、すなわちオブジェクトを表しています.彼によって、javaのthisとocのselfに似ているメソッドを1つのメソッドで呼び出すことができます.例を示します.
    class student():
        """
              
        """
    
        def read(self):
            """
                
    
            """
            print 'read'
    
    
        def talk(self):
            """
                
            :return:
            """
            print 'talk'
    
            self.read()
    

    上記の例では、関数メソッドtalkで関数メソッドreadを呼び出す必要がありますが、どのように呼び出すかというと、selfはブリッジであり、selfを通じてクラスのオブジェクトの例を得て、彼のオブジェクトとメソッドを得て、インスタンスを通じてread関数メソッドを呼び出すことができます.
    クラスのインスタンス
    Javaまたはocでは、クラスのインスタンスにnewキーワードが使用されることが多いが、Pythonではクラスのインスタンスに直接クラス名()を使用すればよい.
    s=student()  #student   ,s       ,       
    

    基本的に、クラスのインスタンスを得るとき、基本的にはそのすべてを得ることに相当し、インスタンスを通じて彼の関数メソッドを呼び出すことも、インスタンスを通じて彼のグローバル変数を呼び出すこともできる.
    Pythonクラス内蔵属性
    Pythonのクラスには、内蔵でもカスタムでも共通の内蔵属性が含まれています.
    __dict__  :                       
    __doc__:         
    __name__:      
    __moudle__ :         
    __base__:             
    

    Q&A
    ここまで、私达のこの章は终わって、実は対象は1つのとても広范な定义で、私达のここはただ简単に彼の使用を绍介して、深い理解は私达が今后の开発の中で绝えず试して、理解する必要があります.