Python C hiệu quả

Khá dễ dàng để thêm các mô-đun tích hợp mới vào Python, nếu bạn biết cách lập trình bằng C. Các mô-đun mở rộng như vậy có thể thực hiện hai việc không thể thực hiện trực tiếp trong Python. họ có thể triển khai các loại đối tượng tích hợp mới và họ có thể gọi các hàm thư viện C và các cuộc gọi hệ thống

Để hỗ trợ các tiện ích mở rộng, API Python [Giao diện lập trình viên ứng dụng] xác định một tập hợp các hàm, macro và biến cung cấp quyền truy cập vào hầu hết các khía cạnh của hệ thống thời gian chạy Python. API Python được tích hợp trong tệp nguồn C bằng cách bao gồm tiêu đề

PyMODINIT_FUNC
PyInit_spam[void]
{
    PyObject *m;

    m = PyModule_Create[&spammodule];
    if [m == NULL]
        return NULL;

    SpamError = PyErr_NewException["spam.error", NULL, NULL];
    Py_XINCREF[SpamError];
    if [PyModule_AddObject[m, "error", SpamError]  import spam
>>> status = spam.system["ls -l"]

Bắt đầu bằng cách tạo một tệp

PyMODINIT_FUNC
PyInit_spam[void]
{
    PyObject *m;

    m = PyModule_Create[&spammodule];
    if [m == NULL]
        return NULL;

    SpamError = PyErr_NewException["spam.error", NULL, NULL];
    Py_XINCREF[SpamError];
    if [PyModule_AddObject[m, "error", SpamError] 

Chủ Đề