Python türü ()

Type () işlevi, nesnenin türünü döndürür veya iletilen argümanlara göre yeni bir tür nesnesi döndürür.

type()Fonksiyonu, iki farklı formları vardır:

 tür (nesne) tür (ad, temeller, dikte)

type () Tek Nesne Parametresiyle

Tek bir nesneye aktarılırsa type(), işlev türünü döndürür.

Örnek 1: Bir Nesnenin Türünü Alma

 numbers_list = (1, 2) print(type(numbers_list)) numbers_dict = (1: 'one', 2: 'two') print(type(numbers_dict)) class Foo: a = 0 foo = Foo() print(type(foo))

Çıktı

 

Bir nesnenin türünü kontrol etmeniz gerekiyorsa, bunun yerine Python isinstance () işlevini kullanmak daha iyidir. Bunun nedeni, isinstance()işlevin verilen nesnenin alt sınıfın bir örneği olup olmadığını da kontrol etmesidir.

type () İsim, tabanlar ve dict Parametreleri ile

Üç parametre aktarılırsa type(), yeni bir tür nesnesi döndürür .

Üç parametre şunlardır:

Parametre Açıklama
isim bir sınıf adı; __name__öznitelik olur
üsler temel sınıfı listeleyen bir demet; __bases__öznitelik olur
dikte etmek sınıf gövdesi için tanımları içeren ad alanı olan bir sözlük; __dict__öznitelik olur

Örnek 2: Bir yazım nesnesi oluşturun

 o1 = type('X', (object,), dict(a='Foo', b=12)) print(type(o1)) print(vars(o1)) class test: a = 'Foo' b = 12 o2 = type('Y', (test,), dict(a='Foo', b=12)) print(type(o2)) print(vars(o2))

Çıktı

 ('a': 'Foo', 'b': 12, '__module__': '__main__', '__dict__':, '__weakref__':, '__doc__': Yok) ('a': 'Foo', 'b ': 12,' __module__ ':' __main__ ',' __doc__ ': Yok)

Programda, __dict__niteliği döndüren Python vars () işlevini kullandık . __dict__nesnenin yazılabilir niteliklerini depolamak için kullanılır.

Gerekirse bu nitelikleri kolayca değiştirebilirsiniz. Örneğin, __name__o1'in özniteliğini olarak değiştirmeniz gerekirse 'Z', şunu kullanın:

 o1 .__ isim = 'Z'

Ilginç makaleler...