Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimana untuk Menentukan Jenis Objek dengan Berkesan dalam Python: `type()` vs. `isinstance()`?

Bagaimana untuk Menentukan Jenis Objek dengan Berkesan dalam Python: `type()` vs. `isinstance()`?

Patricia Arquette
Lepaskan: 2024-12-03 02:04:09
asal
694 orang telah melayarinya

How to Effectively Determine Object Types in Python: `type()` vs. `isinstance()`?

Cara Menentukan Jenis Objek dalam Python

Dalam Python, terdapat beberapa cara untuk menentukan jenis objek. Dua daripada kaedah yang paling biasa digunakan ialah type() dan isinstance().

Menggunakan type()

Fungsi type() mengembalikan jenis objek yang tepat . Contohnya:

>>> type([])
<class 'list'>
>>> type({})
<class 'dict'>
Salin selepas log masuk

Menggunakan isinstance()

Fungsi isinstance() menyemak sama ada objek daripada jenis yang ditentukan atau subjenis daripada jenis itu. Ia menerima dua hujah: objek yang akan diperiksa dan jenis atau tuple jenis untuk diperiksa. Contohnya:

>>> isinstance([], list)
True
>>> isinstance({}, dict)
 True
Salin selepas log masuk

Pertimbangan Warisan

isinstance() juga boleh digunakan untuk menentukan sama ada objek mewarisi daripada jenis tertentu. Contohnya:

class Test1(object):
    pass

class Test2(Test1):
    pass

obj1 = Test1()
obj2 = Test2()

>>> isinstance(obj1, Test1)
 True
>>> isinstance(obj2, Test1)  
 True
Salin selepas log masuk

Memilih Antara jenis() dan isinstance()

isinstance() adalah lebih teguh dan menyokong warisan jenis. Ia harus digunakan dalam kebanyakan kes untuk menentukan jenis objek. type() hanya disyorkan apabila anda memerlukan objek jenis objek yang tepat.

Atas ialah kandungan terperinci Bagaimana untuk Menentukan Jenis Objek dengan Berkesan dalam Python: `type()` vs. `isinstance()`?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan