ثابت‌های توکار

تعداد کمی از ثابت‌ها در فضای نام توکار قرار دارند. آن‌ها عبارتند از:

False

مقدار نادرست نوع bool. انتساب به False غیرمجاز است و باعث پرتاب SyntaxError می‌شود.

True

مقدار درست نوع bool. انتساب به True غیرمجاز است و SyntaxError پرتاب می‌کند.

None

شیء‌ای که اغلب برای نشان دادن نبود یک مقدار استفاده می‌شود، مانند زمانی که آرگومان‌های پیش‌فرض به یک تابع ارسال نمی‌شوند. انتساب به None غیرمجاز است و یک SyntaxError پرتاب می‌کند. None تنها نمونه از نوع NoneType است.

NotImplemented

مقدار ویژه‌ای که باید توسط متدهای ویژه دودویی (برای نمونه __eq__()، __lt__()، __add__()، __rsub__() و غیره) برگردانده شود تا نشان دهد عملیات نسبت به نوع دیگر پیاده‌سازی نشده است؛ ممکن است توسط متدهای ویژه دودویی درجا (برای نمونه __imul__()، __iand__() و غیره) برای همین هدف برگردانده شود. این مقدار نباید در یک زمینه بولی ارزیابی شود. NotImplemented تنها نمونه از نوع types.NotImplementedType است.

توجه

هنگامی که یک متد دودویی (یا درجا) NotImplemented را برمی‌گرداند، مفسر عملیات بازتابی را روی نوع دیگر امتحان می‌کند (یا راه‌حل جایگزین دیگری، بسته به عملگر). اگر تمام تلاش‌ها NotImplemented را برگردانند، مفسر استثنای مناسبی پرتاب می‌کند. برگرداندن به‌اشتباه NotImplemented منجر به یک پیام خطای گمراه‌کننده یا برگردانده شدن مقدار NotImplemented به کد پایتون می‌شود.

برای نمونه‌ها، پیاده‌سازی عملیات حسابی را ببینید.

ملاحظه

NotImplemented و NotImplementedError قابل جایگزینی با یکدیگر نیستند. این ثابت باید فقط همان‌طور که در بالا توضیح داده شد استفاده شود؛ برای جزئیات درباره استفاده صحیح از استثنا، NotImplementedError را ببینید.

تغییر یافته در نسخه‌ی 3.9: ارزیابی NotImplemented در زمینه بولی منسوخ شد.

تغییر یافته در نسخه‌ی 3.14: ارزیابی NotImplemented در یک زمینه بولی، اکنون یک TypeError پرتاب می‌کند. پیش از این به True ارزیابی می‌شد و از پایتون 3.9، یک DeprecationWarning نشان می‌داد.

Ellipsis

همان لفظی سه‌نقطه (ellipsis) ...، شیءای که اغلب برای نشان دادن اینکه چیزی حذف‌شده است استفاده می‌شود. انتساب به Ellipsis امکان‌پذیر است، اما انتساب به ... یک SyntaxError پرتاب می‌کند. Ellipsis تنها نمونه از نوع types.EllipsisType است.

__debug__

این ثابت زمانی درست است که پایتون با گزینه‌ی -O اجرا نشده باشد. همچنین دستور assert را ببینید.

توجه

نام‌های None، False، True و __debug__ قابل انتساب مجدد نیستند (انتساب به آن‌ها، حتی به‌عنوان نام یک ویژگی، SyntaxError را پرتاب می‌کند)، بنابراین می‌توان آن‌ها را ثابت‌های «واقعی» در نظر گرفت.

ثابت‌های اضافه‌شده توسط ماژول site

ماژول site (که به‌صورت خودکار هنگام راه‌اندازی ایمپورت می‌شود، مگر اینکه گزینه خط فرمان -S داده شده باشد) چند ثابت را به فضای نام توکار اضافه می‌کند. این ثابت‌ها برای پوسته تعاملی مفسر مفید هستند و نباید در برنامه‌ها استفاده شوند.

quit(code=None)
exit(code=None)

اشیایی که وقتی چاپ می‌شوند، پیامی مانند «برای خروج از quit() یا Ctrl-D (یعنی EOF) استفاده کنید» را چاپ می‌کنند، و وقتی مستقیماً در مفسر تعاملی به آن‌ها دسترسی پیدا شود یا به‌عنوان تابع فراخوانی شوند، SystemExit را با کد خروج مشخص‌شده پرتاب می‌کنند.

help

شیءای که هنگام چاپ، پیام «برای راهنمای تعاملی، help() را وارد کنید، یا برای راهنمایی درباره‌ی شیء، help(object) را وارد کنید.» را چاپ می‌کند، و هنگامی که مستقیماً در مفسر تعاملی به آن دسترسی پیدا شود، سامانه‌ی راهنمای توکار را فراخوانی می‌کند (به help() مراجعه کنید).

credits

اشیایی که هنگام چاپ یا فراخوانی، به‌ترتیب متن copyright یا credits را چاپ می‌کنند.

license

شیءای که هنگام چاپ، پیام «برای دیدن متن کامل پروانه، license() را تایپ کنید» را چاپ می‌کند و هنگام فراخوانی، متن کامل پروانه را به‌شیوه‌ای مشابه صفحه‌بند (pager)، یعنی هر بار یک صفحه، نمایش می‌دهد.