Taip () dan isinstance () dalam Python dengan Contoh

Isi kandungan:

Anonim

Apakah jenis () dalam Python?

Python mempunyai fungsi bawaan yang disebut type () yang membantu anda mencari jenis kelas pemboleh ubah yang diberikan sebagai input. Sebagai contoh, jika input adalah rentetan, anda akan mendapat output sebagai , untuk senarai, itu akan menjadi , dll.

Dengan menggunakan perintah type (), anda boleh meneruskan satu argumen, dan nilai kembali akan menjadi jenis kelas argumen yang diberikan, contoh: type (objek).

Anda juga boleh melewati tiga argumen untuk menaip (), iaitu, taip (nama, pangkalan, dikte), sekiranya demikian, ia akan mengembalikan objek jenis baru kepada anda.

Dalam tutorial ini, anda akan belajar:

  • Apakah jenis () dalam Python?
  • Sintaks untuk jenis ():
  • Contoh jenis ()
  • Contoh: Menggunakan type () untuk objek kelas.
  • Contoh: Menggunakan nama, pangkalan, dan kata nama jenis ()
  • Apakah isinstance () di Python?
  • Permulaan sintaks ():
  • Contoh isinstance ()
  • Perbezaan Antara jenis () dan isinstance () di Python

Sintaks untuk jenis ():

type () boleh digunakan dalam dua cara seperti yang ditunjukkan di bawah:

type(object)type(namr, bases, dict)

Parameter : jenis (objek)

  • objek: Ini adalah parameter wajib. Sekiranya ini hanya parameter yang diteruskan ke jenis (), maka akan mengembalikan jenis parameter kepada anda.

Parameter : jenis (nama, pangkalan, kata nama)

  • nama: nama kelas.
  • asas: (pilihan). Ini adalah parameter pilihan, dan ini adalah kelas asas
  • imlak: (pilihan). Ini adalah parameter pilihan, dan ruang nama yang mempunyai definisi kelas.

Nilai Pulangan:

Sekiranya objek adalah satu-satunya parameter yang dilewatkan ke jenis () maka ia akan mengembalikan jenis objek kepada anda.

Sekiranya parameter yang diturunkan ke jenis adalah jenis (objek, pangkalan, kata), dalam kes seperti itu, ia akan mengembalikan jenis objek baru.

Contoh jenis ()

Dalam contoh ini, kita mempunyai nilai rentetan, nombor, nilai apungan, nombor kompleks, senarai, tuple, dict dan set. Kami akan menggunakan pemboleh ubah dengan jenis untuk melihat output bagi masing-masing.

str_list = "Welcome to Guru99"age = 50pi = 3.14c_num = 3j+10my_list = ["A", "B", "C", "D"]my_tuple = ("A", "B", "C", "D")my_dict = {"A":"a", "B":"b", "C":"c", "D":"d"}my_set = {'A', 'B', 'C', 'D'}print("The type is : ",type(str_list))print("The type is : ",type(age))print("The type is : ",type(pi))print("The type is : ",type(c_num))print("The type is : ",type(my_list))print("The type is : ",type(my_tuple))print("The type is : ",type(my_dict))print("The type is : ",type(my_set))

Pengeluaran:

The type is :The type is :The type is :The type is :The type is :The type is :The type is :The type is :

Contoh: Menggunakan type () untuk objek kelas.

Apabila anda memeriksa objek yang dibuat dari kelas menggunakan jenis (), ia mengembalikan jenis kelas bersama dengan nama kelas. Dalam contoh ini, kita akan membuat kelas dan memeriksa jenis objek yang dibuat dari ujian kelas.

class test:s = 'testing't = test()print(type(t))

Pengeluaran:

Contoh: Menggunakan nama, pangkalan, dan kata nama jenis ()

Jenisnya juga boleh dipanggil menggunakan sintaks: jenis (nama, pangkalan, kata nama).

Tiga parameter yang diteruskan ke jenis (), nama, pangkalan dan kata adalah komponen yang membentuk definisi kelas. Nama itu mewakili nama kelas, asas adalah kelas asas, dan kata adalah kamus atribut kelas asas.

Dalam contoh ini, kita akan menggunakan ketiga-tiga parameter tersebut iaitu nama, pangkalan, dan imbang dalam jenis ().

Contoh:

class MyClass:x = 'Hello World'y = 50t1 = type('NewClass', (MyClass,), dict(x='Hello World', y=50))print(type(t1))print(vars(t1))

Pengeluaran:

{'x': 'Hello World', 'y': 50, '__module__': '__main__', '__doc__': None}

Apabila anda meneruskan ketiga-tiga argumen untuk menaip (), ia membantu anda memulakan kelas baru dengan atribut kelas asas.

Apakah isinstance () di Python?

Python isinstance adalah sebahagian daripada fungsi bawaan python. Python isinstance () mengambil dua argumen, dan ia akan menjadi benar jika argumen pertama adalah contoh dari classinfo yang diberikan sebagai argumen kedua.

Permulaan sintaks ()

isinstance(object, classtype)

Parameter

  • objek: Objek yang contohnya anda bandingkan dengan classtype. Ia akan kembali benar jika jenisnya sesuai dengan yang salah
  • jenis kelas: Jenis atau kelas atau tupel jenis dan / atau kelas.

Nilai pulangan:

Ia akan kembali benar jika objek tersebut adalah contoh dari classtype dan salah jika tidak.

Contoh isinstance ()

Di bahagian ini, kita akan mempelajari pelbagai contoh untuk belajar tentang permulaan ()

Contoh: isinstance () Pemeriksaan integer

Kod di bawah membandingkan nilai integer 51 dengan jenis int. Ia akan kembali benar seperti 51 perlawanan dengan int sebaliknya tidak betul.

age = isinstance(51,int)print("age is an integer:", age)

Pengeluaran:

age is an integer: True

Contoh: isinstance () Float check

Dalam contoh ini kita akan membandingkan nilai apungan dengan jenis apungan iaitu nilai 3.14 akan dibandingkan dengan jenis apungan.

pi = isinstance(3.14,float)print("pi is a float:", pi)

Pengeluaran:

pi is a float: True

Contoh: isinstance () String check

message = isinstance("Hello World",str)print("message is a string:", message)

Pengeluaran:

message is a string: True

Contoh: isinstance () Tuple check

Kod memeriksa tuple (1,2,3,4,5) dengan jenis tuple. Ia akan kembali benar jika input yang diberikan adalah jenis tuple dan false jika tidak.

my_tuple = isinstance((1,2,3,4,5),tuple)print("my_tuple is a tuple:", my_tuple)

Pengeluaran:

my_tuple is a tuple: True

Contoh: isinstance () Tetapkan cek

Kod memeriksa satu set ({1,2,3,4,5}, dengan set jenis. Ia akan kembali benar jika input yang diberikan adalah jenis set dan salah jika tidak.

my_set = isinstance({1,2,3,4,5},set)print("my_set is a set:", my_set)

Pengeluaran:

my_set is a set: True

Contoh: semakan senarai isinstance ()

Kod memeriksa senarai [1,2,3,4,5], dengan senarai jenis. Ia akan kembali benar jika input yang diberikan adalah jenis senarai dan salah jika tidak.

my_list = isinstance([1,2,3,4,5],list)print("my_list is a list:", my_list)

Pengeluaran:

my_list is a list: True

Contoh: isinstance () cek periksa

Kod tersebut akan memeriksa tanda nama ({"A": "a", "B": "b", "C": "c", "D": "d"}, dengan jenis dik. Ia akan kembali benar jika input yang diberikan adalah jenis dikt dan palsu jika tidak.

my_dict = isinstance({"A":"a", "B":"b", "C":"c", "D":"d"},dict)print("my_dict is a dict:", my_dict)

Pengeluaran:

my_dict is a dict: True

Contoh: ujian isinstance () di kelas

Kod menunjukkan jenis pemeriksaan kelas dengan isinstance (). Objek kelas dibandingkan dengan nama kelas di dalam isinstance (). Ia kembali benar jika objek tersebut tergolong dalam kelas dan sebaliknya.

class MyClass:_message = "Hello World"_class = MyClass()print("_class is a instance of MyClass() : ", isinstance(_class,MyClass))

Pengeluaran:

_class is a instance of MyClass() True

Perbezaan Antara jenis () dan isinstance () di Python

taip () permulaan ()
Python mempunyai fungsi bawaan yang disebut type () yang membantu anda mencari jenis kelas pemboleh ubah yang diberikan sebagai input. Python mempunyai fungsi bawaan yang disebut isinstance () yang membandingkan nilai dengan jenis yang diberikan. Sekiranya nilai dan jenis yang diberikan sesuai, ia akan kembali benar atau tidak.
Nilai kembali adalah objek jenis Nilai pulangan adalah Boolean iaitu benar atau salah.
class A:my_listA = [1,2,3]class B(A):my_listB = [1,2,3]print(type(A()) == A)print(type(B()) == A)
Pengeluaran:
TrueFalse
Sekiranya jenis, periksa subkelas memberikan kembali palsu
class A:my_listA = [1,2,3]class B(A):my_listB = [1,2,3]print(isinstance(A(), A))print(isinstance(B(), A))
Pengeluaran:
TrueTrue
isinstance () memberikan nilai yang benar ketika diperiksa dengan subkelas.

Ringkasan:

  • Python mempunyai fungsi bawaan yang disebut type () yang membantu anda mencari jenis kelas pemboleh ubah yang diberikan sebagai input. Sebagai contoh, jika input adalah rentetan, anda akan mendapat output sebagai , untuk senarai, itu akan menjadi , dll.
  • Untuk jenis (), anda boleh meneruskan satu argumen, dan nilai pengembalian akan menjadi jenis kelas argumen yang diberikan, misalnya, jenis (objek).
  • Anda juga boleh melewati tiga argumen untuk menaip (), iaitu, taip (nama, pangkalan, dikte), sekiranya demikian, ia akan mengembalikan objek jenis baru kepada anda.
  • Python mempunyai fungsi bawaan yang disebut instance () yang membandingkan nilai dengan jenis yang diberikan. Nilai dan jenis yang sesuai akan dikembalikan benar atau salah. Dengan menggunakan isinstance (), anda boleh menguji string, float, int, list, tuple ,ict, set, class, dll.
  • Dengan menggunakan kaedah isinstance (), anda boleh menguji string, float, int, list, tuple ,ict, set, class, dll.