Đối tượng cho gợi ý kiểu¶
Nhiều loại tích hợp sẵn cho gợi ý loại được cung cấp. Hiện tại có hai loại -- GenericAlias và Union. Chỉ GenericAlias được tiếp xúc với C.
-
PyObject *Py_GenericAlias(PyObject *origin, PyObject *args)¶
- Một phần của ABI ổn định kể từ phiên bản 3.9.
Tạo một đối tượng GenericAlias. Tương đương với việc gọi lớp Python
types.GenericAlias. Các đối số origin và args lần lượt đặt các thuộc tínhGenericAlias's__origin__và__args__. origin phải là PyTypeObject* và args có thể là PyTupleObject* hoặc bất kỳPyObject*nào. Nếu args được thông qua không phải là một bộ, thì một bộ 1 sẽ tự động được tạo và__args__được đặt thành(args,). Việc kiểm tra tối thiểu được thực hiện đối với các đối số, do đó hàm sẽ thành công ngay cả khi origin không phải là một loại. Thuộc tínhGenericAliascủa__parameters__được xây dựng một cách lười biếng từ__args__. Nếu thất bại, một ngoại lệ sẽ xuất hiện vàNULLđược trả về.Dưới đây là ví dụ về cách tạo loại tiện ích mở rộng chung chung:
... PyMethodDef tĩnh my_obj_methods[] = { // Các phương thức khác. ... {"__class_getitem__", Py_GenericAlias, METH_O|METH_CLASS, "Xem PEP 585"} ... }
Xem thêm
Phương pháp mô hình dữ liệu
__class_getitem__().Added in version 3.9.
-
PyTypeObject Py_GenericAliasType¶
- Một phần của ABI ổn định kể từ phiên bản 3.9.
Loại C của đối tượng được trả về bởi
Py_GenericAlias(). Tương đương vớitypes.GenericAliastrong Python.Added in version 3.9.