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

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

This view

  • Original page
  • New address

GeezerVison is showing python.github.io — اشیاء تولیدگر

اشیاء تولیدگر¶

اشیاء تولیدگر همان چیزی هستند که پایتون برای پیاده‌سازی پیمایش‌گرهای تولیدگر از آن‌ها استفاده می‌کند. این اشیاء معمولاً با پیمایش کردن تابعی که مقادیر را بازدهی (yield) می‌کند ایجاد می‌شوند، نه با فراخوانی صریح PyGen_New() یا PyGen_NewWithQualName().

type PyGenObject¶

ساختار C استفاده‌شده برای اشیاء تولیدگر.

PyTypeObject PyGen_Type¶

شیء نوعِ متناظر با شیءهای تولیدگر.

int PyGen_Check(PyObject *ob)¶

اگر ob یک شیء تولیدگر باشد، مقدار true را برمی‌گرداند؛ ob نباید NULL باشد. این تابع همیشه با موفقیت انجام می‌شود.

int PyGen_CheckExact(PyObject *ob)¶

اگر نوع ob برابر PyGen_Type باشد، مقدار true برمی‌گرداند؛ ob نباید NULL باشد. این تابع همیشه با موفقیت اجرا می‌شود.

PyObject *PyGen_New(PyFrameObject *frame)¶
مقدار بازگشتی: مرجع جدید.

یک شیء تولیدگر جدید بر اساس شیء frame ایجاد کرده و برمی‌گرداند. ارجاعی به frame توسط این تابع «دزدیده» می‌شود (حتی در صورت بروز خطا). این آرگومان نباید NULL باشد.

PyObject *PyGen_NewWithQualName(PyFrameObject *frame, PyObject *name, PyObject *qualname)¶
مقدار بازگشتی: مرجع جدید.

یک شیء تولیدگر جدید بر اساس شیء frame ایجاد می‌کند و برمی‌گرداند که __name__ و __qualname__ آن روی name و qualname تنظیم شده‌اند. ارجاعی به frame توسط این تابع «دزدیده» می‌شود (حتی در صورت خطا). آرگومان frame نباید NULL باشد.

PyCodeObject *PyGen_GetCode(PyGenObject *gen)¶

یک ارجاع قوی جدید به شیء کدی که توسط gen دربرگرفته‌شده است، برمی‌گرداند. این تابع همیشه با موفقیت انجام می‌شود.

اشیاء تولیدگر ناهمگام¶

همچنین ببینید

PEP 525

PyTypeObject PyAsyncGen_Type¶

شیء نوعِ متناظر با شیءهای تولیدگر ناهمگام. این در لایه‌ی پایتون به‌صورت types.AsyncGeneratorType دسترس‌پذیر است.

اضافه شده در نسخه‌ی 3.6.

PyObject *PyAsyncGen_New(PyFrameObject *frame, PyObject *name, PyObject *qualname)¶

ایجادکننده‌ی یک تولیدگر ناهمگام جدید است که frame را دربر می‌گیرد و مقدارهای __name__ و __qualname__ آن را به‌ترتیب روی name و qualname تنظیم می‌کند. frame توسط این تابع (ربوده‌شده) محسوب می‌شود (حتی در صورت بروز خطا) و نباید NULL باشد.

در صورت موفقیت، این تابع یک ارجاع قوی به تولیدگر ناهمگام جدید برمی‌گرداند. در صورت شکست، این تابع NULL را همراه با یک استثنای تنظیم‌شده برمی‌گرداند.

اضافه شده در نسخه‌ی 3.6.

int PyAsyncGen_CheckExact(PyObject *op)¶

اگر op یک شیء تولیدگر ناهمگام باشد، true برمی‌گرداند و در غیر این صورت false. این تابع همیشه موفق می‌شود.

اضافه شده در نسخه‌ی 3.6.

API منسوخ¶

PyAsyncGenASend_CheckExact(op)¶

این یک API است که به اشتباه در C API پایتون گنجانده شده بود.

این تنها برای کامل بودن اینجا قرار گرفته است؛ از این API استفاده نکنید.

منسوخ‌سازی نرم <Soft deprecated> از نسخه‌ی 3.14.

© حق نشر 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.