Hàm type() trong Python
Hàm tích hợp sẵn type() trong Python trả về kiểu của đối tượng được truyền dưới dạng tham số. Hàm type() chủ yếu được sử dụng cho mục đích gỡ lỗi.
Cú pháp
Có hai loại tham số khác nhau có thể được truyền cho hàm type() ta gọi là tham số đơn và tham số ba.
type(object)type(name, bases, dict)
- Nếu loại tham số đơn (object) được truyền, kết quả sẽ trả về kiểu đối tượng đã cho.
- Nếu tham số ba (name, bases, dict) được truyền, nó sẽ trả về một đối tượng kiểu mới.
type() với một tham số đối tượng duy nhất (tham số đơn)
Nếu loại tham số đơn (object) được truyền, kết quả sẽ trả về kiểu đối tượng đã cho.
Ví dụ: Làm thế nào để có được kiểu đối tượng?
numberList = [1, 2]print(type(numberList))numberDict = {1: 'one', 2: 'two'}print(type(numberDict))class Foo:a = 0InstanceOfFoo = Foo()print(type(InstanceOfFoo))
Chạy chương trình, kết quả trả về là:
<class 'list'><class 'dict'><class 'Foo'>
Nếu bạn muốn kiểm tra kiểu đối tượng thì cũng có thể sử dụng hàm Python isinstance(),vì hàm isinstance() cũng có nhiệm vụ kiểm tra xem đối tượng đã cho có phải là một cá thể của lớp con hay không.
type() với ba tham số name, bases, dict (tham số ba)
Nếu tham số ba (name, bases, dict) được truyền, nó sẽ trả về một đối tượng kiểu mới.
name
: tên lớp sẽ trở thành thuộc tính __name__.bases
: tuple của các lớp, tương ứng với thuộc tính __base__.dict
: một từ điển chứa các namespace cho class, tương ứng với thuộc tính __dict__.
Ví dụ: Tạo kiểu đối tượng sử dụng type()
o1 = type('X', (object,), dict(a='Foo', b=12))print(type(o1))print(vars(o1))class test:a = 'Foo'b = 12o2 = type('Y', (test,), dict(a='Foo', b=12))print(type(o2))print(vars(o2))
Chạy chương trình, kết quả trả về là:
<class 'type'>{'a': 'Foo', 'b': 12, '__weakref__': <attribute '__weakref__' of 'X' objects>, '__dict__': <attribute '__dict__' of 'X' objects>, '__module__': '__main__', '__doc__': None}<class 'type'>{'a': 'Foo', '__module__': '__main__', 'b': 12, '__doc__': None}
Trong ví dụ trên, hàm vars() được sử dụng để trả về thuộc tính __dict__. __dict__ được sử dụng để lưu trữ các thuộc tính có thể ghi của đối tượng.
Xem thêm: Các hàm Python tích hợp sẵn
Bạn nên đọc
Theo Nghị định 147/2024/ND-CP, bạn cần xác thực tài khoản trước khi sử dụng tính năng này. Chúng tôi sẽ gửi mã xác thực qua SMS hoặc Zalo tới số điện thoại mà bạn nhập dưới đây:


Cũ vẫn chất
-
5 cách lấy kim cương miễn phí trong Free Fire
Hôm qua 3 -
Arc Browser có mặt trên Windows 10, phiên bản ARM sắp ra mắt
Hôm qua -
Cách bật NFC trên iPhone dễ, nhanh nhất
Hôm qua -
Code Sự tiến hóa tối thượng: Saiyan mới nhất và cách nhập code
Hôm qua -
Lời cảm ơn, tri ân thầy cô hay và xúc động
Hôm qua 1 -
Lời chúc Tết Đoan ngọ mùng 5/5 âm lịch, thơ hay về Tết Đoan Ngọ
Hôm qua 1 -
Sân si là gì? Ý nghĩa của sân si?
Hôm qua -
Cách điều chỉnh kích thước ô trong bảng Word bằng nhau
Hôm qua -
Hướng dẫn đổi DNS Google 8.8.8.8 và 8.8.4.4
Hôm qua -
Rắn cổ đỏ là rắn gì, có độc không?
Hôm qua