۱ علی شهریاری
کارکرد __all__
Reza Mobaraki حل شده توسط Reza Mobaraki

__all__ چیکار میکنه دقیقا و چرا ما باید بزنیمش؟

 

درود علی عزیز وقت بخیر  
`__all__` یک ویژگی در پایتون که معمولاً توی ماژول‌ها برای تعیین متغیرها، توابع و کلاس‌هایی که از ماژول به عنوان واحد اصلی (public API) استفاده میشن، به کار برده میشه. وقتی شما `__all__` را تعیین میکنین،  در واقع به پایتون میگین که این متغیرها و کلاس‌ها باید به عنوان بخشی از واجد اصلی ماژول معرفی بشه.

به عنوان مثال، اگر شما یک ماژول به نام `my_module` دارید و می‌خواهید تعداد معدودی از نمادها (متغیرها، توابع یا کلاس‌ها) را به عنوان API عمومی اعلام کنه، میتونین `__all__` را تعیین کنین. به صورت زیر:

__all__ = ['my_variable', 'my_function', 'MyClass']

این تعیین به IDE‌ها و ابزارهای توسعه دهندگان کمک می‌کند تا نمادهای مشخص شده در `__all__` به عنوان نمادهای عمومی و مهم ماژول شناخته شوند و پیشنهادات مناسبی برای کاربران ارائه شوند.

`__all__` اختیاری است و در اکثر مواقع برای ماژول‌های ساده مورد استفاده قرار می‌گیرد تا رابط عمومی ماژول را تعریف کند. اگر `__all__` را تعیین نکنین، تمام نمادها در ماژول به عنوان عناصر عمومی در نظر گرفته میشه.

تعیین `__all__` میتونه مفید باشه تا واجد اصلی یک ماژول را به شکل واضح‌تری تعریف کنید و تداخل‌های نامگذاری را کاهش بده.
موفق باشید 💎

بهترین پاسخ
Reza Mobaraki ۰۶ آبان ۱۴۰۲، ۱۸:۴۵