isinstance

Kiểm tra giá trị thuộc kiểu dựng sẵn, lớp giá trị DSL hay lớp tự định nghĩa. Không chuyển đổi giá trị.

Cú pháp

isinstance(value, class_or_tuple, /)

Tham số

TênMô tả
valueAny
Giá trị cần kiểm tra.
Bắt buộc · Chỉ truyền theo vị trí
Không có giá trị mặc định
class_or_tupleType | tuple[Type, ...]
Truyền tham chiếu kiểu không có dấu nháy: bool, int, float, str, list, tuple, dict, set, range, enumerate, zip; lớp giá trị DSL như Point, Match, AudioMatch; hoặc lớp tự định nghĩa. Tuple có thể lồng nhau và được kiểm tra từ trái sang phải đến khi khớp. Phần tử không hợp lệ được gặp trước khi khớp gây TypeError. Không nhận chuỗi hoặc type(value) vì type() trả văn bản. Flow, System, Storage, Touch, ScreenCapture và Recognition là không gian tên hoặc ngữ cảnh, không phải kiểu.
Bắt buộc · Chỉ truyền theo vị trí
Không có giá trị mặc định

Giá trị trả về

Boolean — True nếu khớp kiểu; ngược lại trả False, kể cả với tuple rỗng. bool cũng khớp int; int và float là hai kiểu khác nhau. Lớp tự định nghĩa được so theo đúng lần định nghĩa, kể cả khi tên giống nhau.

Ví dụ

# Kiểm tra kiểu giá trị trước khi sử dụng
value = 42
if isinstance(value, (int, float)):
    print(value + 1)
print(isinstance(Point(10, 20), Point))