Kiểu Python ()

Hàm type () trả về kiểu của đối tượng hoặc trả về đối tượng kiểu mới dựa trên các đối số được truyền vào.

Các type()chức năng có hai hình thức khác nhau:

 type (object) type (name, base, dict)

type () Với một tham số đối tượng duy nhất

Nếu một đối tượng được chuyển đến type(), hàm sẽ trả về kiểu của nó.

Ví dụ 1: Lấy loại đối tượng

 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))

Đầu ra

 

Nếu bạn cần kiểm tra loại đối tượng, tốt hơn nên sử dụng hàm isinstance () trong Python. Đó là bởi vì isinstance()hàm cũng kiểm tra xem đối tượng đã cho có phải là một thể hiện của lớp con hay không.

type () Với tên, căn cứ và Tham số chính

Nếu ba tham số được chuyển đến type(), nó sẽ trả về một đối tượng kiểu mới .

Ba tham số là:

Tham số Sự miêu tả
Tên tên lớp; trở thành __name__thuộc tính
căn cứ một bộ tuple chia thành các lớp cơ sở; trở thành __bases__thuộc tính
dict một từ điển là không gian tên chứa các định nghĩa cho thân lớp; trở thành __dict__thuộc tính

Ví dụ 2: Tạo một đối tượng kiểu

 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))

Đầu ra

 ('a': 'Foo', 'b': 12, '__module__': '__main__', '__dict__':, '__weakref__':, '__doc__': Không có) ('a': 'Foo', 'b ': 12,' __module__ ':' __main__ ',' __doc__ ': Không có)

Trong chương trình, chúng tôi đã sử dụng hàm Python vars () để trả về __dict__thuộc tính. __dict__được sử dụng để lưu trữ các thuộc tính có thể ghi của đối tượng.

Bạn có thể dễ dàng thay đổi các thuộc tính này nếu cần thiết. Ví dụ: nếu bạn cần thay đổi __name__thuộc tính của o1 thành 'Z', hãy sử dụng:

 o1 .__ name = 'Z'

thú vị bài viết...