Mở rộng và nhúng trình thông dịch Python

Tài liệu này mô tả cách viết các mô-đun bằng C hoặc C++ để mở rộng trình thông dịch Python với các mô-đun mới. Các mô-đun đó không chỉ có thể xác định các hàm mới mà còn cả các loại đối tượng mới và phương thức của chúng. Tài liệu này cũng mô tả cách nhúng trình thông dịch Python vào một ứng dụng khác để sử dụng làm ngôn ngữ mở rộng. Cuối cùng, nó cho thấy cách biên dịch và liên kết các mô-đun mở rộng để chúng có thể được tải động (trong thời gian chạy) vào trình thông dịch, nếu hệ điều hành cơ bản hỗ trợ tính năng này.

Tài liệu này giả định kiến ​​thức cơ bản về Python. Để biết phần giới thiệu không chính thức về ngôn ngữ, hãy xem Hướng dẫn Python. Tài liệu tham khảo ngôn ngữ Python đưa ra định nghĩa chính thức hơn về ngôn ngữ. Thư viện chuẩn Python ghi lại các loại đối tượng, chức năng và mô-đun hiện có (cả tích hợp và viết bằng Python) giúp ngôn ngữ này có phạm vi ứng dụng rộng rãi.

Để biết mô tả chi tiết về toàn bộ Python/C API, hãy xem Hướng dẫn tham khảo Python/C API riêng.

Tạo tiện ích mở rộng mà không cần công cụ của bên thứ ba

Phần hướng dẫn này đề cập đến việc tạo tiện ích mở rộng C và C++ mà không cần sự hỗ trợ từ các công cụ của bên thứ ba. Nó chủ yếu dành cho những người tạo ra các công cụ đó chứ không phải là một cách được khuyến nghị để tạo các tiện ích mở rộng C của riêng bạn.

Xem thêm

PEP 489 -- Khởi tạo mô-đun mở rộng nhiều pha

Nhúng thời gian chạy CPython vào một ứng dụng lớn hơn

Đôi khi, thay vì tạo một tiện ích mở rộng chạy bên trong trình thông dịch Python làm ứng dụng chính, bạn nên nhúng thời gian chạy CPython vào bên trong một ứng dụng lớn hơn. Phần này bao gồm một số chi tiết liên quan đến việc thực hiện điều đó thành công.