توسعه و تعبیه مفسر پایتون¶
این سند توضیح میدهد که چگونه میتوان ماژولهایی به زبان C یا C++ نوشت تا مفسر پایتون با ماژولهای جدید توسعه یابد. این ماژولها نهتنها توابع جدید، بلکه نوعهای جدید شیء و متدهای آنها را نیز میتوانند تعریف کنند. این سند همچنین توضیح میدهد که چگونه میتوان مفسر پایتون را در برنامهای دیگر تعبیه کرد تا بهعنوان یک زبان توسعهای از آن استفاده شود. در نهایت، نشان میدهد که چگونه میتوان ماژولهای توسعهای را کامپایل و پیوند داد تا در صورت پشتیبانی سیستمعامل زیرین از این قابلیت، بهصورت پویا (در زمان اجرا) در مفسر بارگذاری شوند.
This document assumes basic knowledge about C and Python. For an informal introduction to Python, see راهنمای پایتون. مرجع زبان پایتون gives a more formal definition of the language. Python built-ins reference documents the built-in functions and object types, and The Python standard library documents the modules (both built-in and written in Python) that give the language its wide application range.
برای شرح دقیق کل Python/C API، به راهنمای مرجع Python/C API جداگانه مراجعه کنید.
ابزارهای شخص ثالث توصیهشده¶
این راهنما تنها ابزارهای پایهای را پوشش میدهد که بهعنوان بخشی از این نسخه از سیپایتون برای ایجاد افزونهها ارائه شدهاند. برخی از ابزارهای شخص ثالث رویکردهایی هم سادهتر و هم پیشرفتهتر برای ایجاد افزونههای C و C++ برای پایتون ارائه میدهند.
ایجاد توسعهها بدون ابزارهای شخص ثالث¶
این بخش از راهنما به ایجاد توسعههای C و C++ بدون کمک گرفتن از ابزارهای شخص ثالث میپردازد. این بخش در درجهی اول برای سازندگان آن ابزارها در نظر گرفته شده است، نه اینکه روش توصیهشدهای برای ایجاد توسعههای C خودتان باشد.
همچنین ملاحظه نمائید
PEP 489 -- مقداردهی اولیهی چندمرحلهای ماژول توسعهای
- 1. توسعه پایتون با C یا C++
- 1.1. یک مثال ساده
- 1.2. میانپرده: خطاها و استثناها
- 1.3. بازگشت به مثال
- 1.4. جدول متدهای ماژول و تابع مقداردهی اولیه
- 1.5. کامپایل و پیونددهی (linkage)
- 1.6. فراخوانی توابع پایتون از زبان C
- 1.7. استخراج پارامترها در توابع توسعهای
- 1.8. پارامترهای کلیدواژهای برای توابع توسعهای
- 1.9. ساخت مقادیر دلخواه
- 1.10. شمارش ارجاع
- 1.11. نوشتن توسعهها با C++
- 1.12. ارائهی یک C API برای ماژول توسعهای
- 2. تعریف نوعهای توسعهای: آموزش
- 3. تعریف نوعهای توسعهای: موضوعات گوناگون
- 4. ساخت توسعههای C و C++
- 5. ساخت ماژولهای توسعهای C و ++C در ویندوز
تعبیه رانتایم سیپایتون در برنامهای بزرگتر¶
گاهی، بهجای ایجاد افزونهای که درون مفسر پایتون بهعنوان برنامه اصلی اجرا میشود، مطلوب است که رانتایم سیپایتون درون برنامهای بزرگتر تعبیه شود. این بخش برخی از جزئیات مربوط به انجام موفقیتآمیز این کار را در بر میگیرد.