[005]---python内蔵関数-isinstance.md

1253 ワード

[TOC]
isinstance
isinstance(object,classinfo)は、インスタンスがこのクラスであるか、objectが変数であるかを判断する
  • classinfoはタイプ(tuple,dict,int,float)であり、変数がこのタイプ
  • であるか否かを判断する
    class objA:   
        pass   
    
    A = objA()   
    B = 'a','v'   
    C = 'a string'   
    
    print isinstance(A, objA)   
    print isinstance(B, tuple)   
    print isinstance(C, basestring)   
        :   
    True   
    True   
    True   
  • はそれだけでなく、isinstance関数を利用して、1つのオブジェクトが既知のタイプであるか否かを判断することもできる.

  • isinstanceの説明は以下の通りです.
    isinstance(object, class-or-type-or-tuple) -> bool
    Return whether an object is an instance of a class or of a subclass thereof. With a type as second argument, return whether that is the object's type. The form using a tuple, isinstance(x, (A, B, ...)), is a shortcut for isinstance(x, A) or isinstance(x, B) or ... (etc.).
  • その最初のパラメータはオブジェクトであり、2番目はタイプ名またはタイプ名のリストである.
  • その戻り値はブール型である.
  • オブジェクトのタイプがパラメータ2のタイプと同じであればTrueを返します.
  • パラメータ2が1つのメタグループである場合、オブジェクトタイプがメタグループのタイプ名の1つと同じである場合、Trueに戻る.
  • isinstance(lst, list)  
    True  
    
    isinstance(lst, (int, str, list) )  
    True

    http://blog.csdn.net/business122/article/details/7608176 http://www.jb51.net/article/54275.htm