GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • فهرست مطالب
  • توسعه و تعبیه مفسر پایتون
  • ملاحظات امنیتی
  • نخستین ماژول توسعه‌ی C API شما
  • گزارش یک اشکال
  • بهبود این صفحه
  • نمایش منبع
  • نمایش منبع ترجمه
  • اندیس
  • ماژول‌ها
  • Python
  • 3.15.2 documentation

This view

  • Original page
  • New address

GeezerVison is showing python.github.io — توسعه و تعبیه مفسر پایتون

توسعه و تعبیه مفسر پایتون¶

این سند شرح می‌دهد که چگونه ماژول‌هایی به زبان C یا C++ بنویسید تا مفسر پایتون را با ماژول‌های جدید توسعه دهید. آن ماژول‌ها می‌توانند کارهایی را که کدهای پایتون انجام می‌دهند -- مانند تعریف توابع، انواع داده‌ی اشیاء و متدها -- انجام دهند، و همچنین با کتابخانه‌های بومی تعامل داشته باشند یا با اجتناب از سربار مفسر، کارایی بهتری به دست آورند. این سند همچنین نحوهی تعبیه‌سازی مفسر پایتون را در برنامه‌ای دیگر، برای استفاده به عنوان یک زبان افزونه، شرح می‌دهد. در نهایت، نشان می‌دهد که چگونه ماژول‌های توسعه‌ای را کامپایل و پیوند (link) دهید تا در صورت پشتیبانی سیستم‌عامل زیربنایی، بتوانند به صورت پویا (در زمان اجرا) در مفسر بارگذاری شوند.

این سند دانش پایه‌ای درباره C و Python را فرض می‌کند. برای مقدمه‌ی غیررسمی به Python، به راهنمای پایتون مراجعه کنید. مرجع زبان پایتون تعریفی رسمی‌تر از زبان ارائه می‌دهد. ارجاع توکارهای پایتون توابع و انواع شیء توکار را مستند می‌کند، و کتابخانه‌ی استاندارد پایتون ماژول‌ها (هر دو توکار و نوشته شده در Python) را که به زبان طیف وسیعی از کاربردها می‌دهند، مستند می‌کند.

برای شرح دقیق کل Python/C API، به راهنمای مرجع Python/C API جداگانه مراجعه کنید.

برای پشتیبانی از افزونه‌ها، API زبان C در پایتون (رابط برنامه‌نویسی کاربردی) مجموعه‌ای از توابع، ماکروها و متغیرها را تعریف می‌کند که دسترسی به بیشتر جنبه‌های سیستم زمان اجرای پایتون را فراهم می‌کنند. API پایتون با گنجاندن سرآیند "Python.h" در یک پرونده‌ی سورس C گنجانده می‌شود.

نکته

رابط افزونه‌ی C مختص CPython است و ماژول‌های توسعه‌ای روی سایر پیاده‌سازی‌های پایتون کار نمی‌کنند. در بسیاری از موارد، اجتناب از نوشتن افزونه‌های C و حفظ قابلیت حمل به سایر پیاده‌سازی‌ها امکان‌پذیر است. برای مثال، اگر مورد استفاده‌ی شما فراخوانی عملکردهای کتابخانه‌ی C یا فرایندهای سیستمی است، باید به‌جای نوشتن کد سفارشی C، استفاده از ماژول ctypes یا کتابخانه‌ی cffi را در نظر بگیرید. این ماژول‌ها به شما اجازه می‌دهند کدهای پایتون را برای ارتباط با کدهای C بنویسید و نسبت به نوشتن و کامپایل کردن یک ماژول توسعه‌ی C، قابلیت حمل بالاتری بین پیاده‌سازی‌های مختلف پایتون دارند.

ابزارهای شخص ثالث توصیه‌شده¶

این سند تنها ابزارهای پایه‌ای را برای ایجاد افزونه‌های ارائه‌شده به عنوان بخشی از این نسخه‌ی سی‌پایتون پوشش می‌دهد. برخی از ابزارهای شخص ثالث رویکردهای ساده‌تر و پیشرفته‌تری را برای ایجاد افزونه‌های C و C++ برای پایتون ارائه می‌دهند.

اگرچه این سند برای نویسندگان افزونه‌ها در نظر گرفته شده است، اما باید برای نویسندگان چنین ابزارهایی نیز مفید باشد. برای مثال، ماژول آموزشی می‌تواند به‌عنوان یک آزمون ساده برای یک ابزار ساخت یا نمونه خروجی مورد انتظار یک تولیدگر کد عمل کند.

آموزش API زبان C¶

این آموزش نحوه‌ی نوشتن یک ماژول ساده به زبان C یا C++ را با استفاده از API C پایتون شرح می‌دهد — یعنی با استفاده از ابزارهای پایه‌ای که به عنوان بخشی از این نسخه از CPython ارائه شده‌اند.

  1. نخستین ماژول توسعه‌ی C API شما

راهنماهایی برای مباحث متوسط¶

این بخش از راهنما به ایجاد توسعه‌های C و C++ بدون کمک گرفتن از ابزارهای شخص ثالث می‌پردازد. این بخش در درجه‌ی اول برای سازندگان آن ابزارها در نظر گرفته شده است، نه اینکه روش توصیه‌شده‌ای برای ایجاد توسعه‌های C خودتان باشد.

  • استفاده از C API: موضوعات متفرقه

  • تعریف نوع‌های توسعه‌ای: آموزش

  • تعریف نوع‌های توسعه‌ای: موضوعات گوناگون

  • ساخت توسعه‌های C و C++

  • ساخت ماژول‌های توسعه‌ای C و ++C در ویندوز

تعبیه ران‌تایم سی‌پایتون در برنامه‌ای بزرگ‌تر¶

گاهی، به‌جای ایجاد افزونه‌ای که درون مفسر پایتون به‌عنوان برنامه اصلی اجرا می‌شود، مطلوب است که ران‌تایم سی‌پایتون درون برنامه‌ای بزرگ‌تر تعبیه شود. این بخش برخی از جزئیات مربوط به انجام موفقیت‌آمیز این کار را در بر می‌گیرد.

  • تعبیه پایتون در برنامه‌ای دیگر

© حق نشر 2001 Python Software Foundation.
این صفحه تحت مجوز بنیاد نرم‌افزار پایتون نسخه ۲ منتشر شده است.
مثال‌ها، دستورالعمل‌ها، و سایر کدهای موجود در مستندات همچنین تحت مجوز بدون بند BSD منتشر شده‌اند.
برای اطلاعات بیشتر به تاریخچه و مجوز مراجعه کنید.

بنیاد نرم‌افزار پایتون یک شرکت غیرانتفاعی است. لطفاً کمک مالی کنید.

آخرین به‌روزرسانی در نوامبر 12, 2026 (06:19 UTC). آیا اشکالی یافتید؟
ساخته شده با Sphinx 9.1.0.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.