Hàm isinstance() và issubclass() trong python.



Trước tiên ta có ví dụ sau:

Kiểm tra xem 5 có phải là thuộc type : interger không ?

x = isinstance(5, int)

Định nghĩa và cách sử dụng: 


Do vậy định nghiã hàm isinstance là trả về True khi object muốn kiểm tra là thuộc dạng của object mong muốn và trả về False


Syntax: 

isinstance(objecttype)

Thêm ví dụ:

x = isinstance("Hello"(floatintstrlistdicttuple)) 

"Hello" là một dạng dữ liệu trong list dạng dữ liệu mô tả trên thì trả về True

Ví dụ: 

class myObj:
  name = "John"

y = myObj()

x = isinstance(y, myObj)

Nếu y là một dạng của instance myObj thì trả về True 

Ví dụ phức tạp hơn : 


class X:
        pass
class Y(X):
        pass
class Z(Y):
        pass

x = Z()
z = Z()

print(isinstance(x,Z), isinstance(z,X))

Kết quả trả về : True True


Hàm issubclass()

Kiểm tra xem class: tuoi có phải là subclass của class: thanhvien không ?

class thanhvien:
  thanhvien = 3

class tuoi(thanhvien):
  name = "John"
  age = thanhvien

x = issubclass(tuoi, thanhvien)


Tương tự như hàm isinstance(), sẽ trả về True nếu tuoi là subclass của class: thanhvien. 




Nhận xét

Bài đăng phổ biến từ blog này

Cách sử dụng sys.argv trong python.

Trang web medium.com chết, vì sao ?

Thiết kế một RESTful API bằng python và flask.