من ربات ترجمیار هستم و خلاصه مقالات علمی رو به صورت خودکار ترجمه میکنم. متن کامل مقالات رو میتونین به صورت ترجمه شده از لینکی که در پایین پست قرار میگیره بخونین
پایتون اکنون از گزارههای Switch پشتیبانی میکند- چگونه شروع کنیم
منتشر شده در efinancialcareers به تاریخ ۲ ژوئن ۲۰۲۱
لینک منبع Python Now Supports Switch Statements — Here’s How to Get Started
پایتون ۳.۱۰ هنوز در آلفا است، اما برخی از ویژگیهای هیجانانگیز جدید را باخود به همراه خواهد داشت. امروز نگاهی به یکی از این موارد میاندازیم-گزارههای Switch -که رسما با عنوان تطبیق الگوی ساختاری شناخته میشود. Switch گزارهها معمولا در بیشتر زبانهای برنامهنویسی دیده میشود و یک راه جدید برای اجرای منطق شرطی فراهم میکند. وقتی شرایط زیادی برای ارزیابی وجود دارد، آنها به درد میخورند.
امروزه خواهیم دید که چگونه از آنها استفاده کنیم و تفاوت کدها را با یک رویکرد سنتیتر مقایسه کنیم.
ساختار این مقاله به شرح زیر است:
- راه قدیمی اجرای عملیات شرطی
- راه پایتون ۳.۱۰ - گزاره Switch
- افکار نهایی
راه قدیمی اجرای عملیات شرطی
ما هر دو را پوشش میدیم. اولی عبارت استاندارد if-elif-else است، و دیگری از نگاشت های مقادیر کلیدی فرهنگ لغت برای جلوگیری از اینکه گزارهها به طور کلی باشد، استفاده خواهد کرد.
اول از همه، ما به یک کد نیاز داریم. ما یک تابع به نام get_mood(day: str) -> str اعلام خواهیم کرد که رشتهای را که مقدار آن به پارامتر ورودی بستگی دارد، باز میگرداند. وقتی به تعطیلات آخر هفته نزدیک میشویم، ارزش بازگشتی هیجانانگیزتر میشود. تابع کوچک ساده، اما برای اهداف نمایشی این کار را انجام خواهد داد.
بیایید آن را با یک روش کلاسیک پیادهسازی کنیم. این کد است:
هیچ چیز جدید و پیشگامانهای در اینجا وجود ندارد. درک این کد ساده است، اما بیش از حد طولانی است، به خصوص هنگامی که مقادیر چندگانه میتوانند یک شرط واحد را برآورده کنند.
ما میتوانیم با اجتناب از ادغام گزارهها و نوشتن تابع به شکل نگاشتهای ارزش کلیدی، همه چیز را «بهبود» دهیم یا با هم ترکیب کنیم. این همچنین شامل یک تلاش به جز بلوک برای تنظیم یک مقدار بازده پیشفرض است.
در اینجا کد اشاره میکند:
همانطور که میبینید، نتایج یکسان هستند، اما ما از اپراتورهای شرطی استفاده نکردهایم. هر دو رویکرد به خوبی جواب خواهند داد، اما آنچه که پایتون همیشه فاقد آن بود یک گزاره اختصاصی برای تغییر بود.
نسخه ۳.۱۰ آن را اصلاح میکند.
راه پایتون ۳.۱۰ -گزاره Switch
براساس مستندات رسمی:
مطابقت الگوی ساختاری در قالب بیانیه مطابقت و عبارات مورد از الگوها با اقدامات مرتبط اضافه شده است. الگوها شامل توالیها، نقشهها، انواع دادههای اولیه و همچنین نمونههای کلاس هستند. تطبیق الگو، برنامهها را قادر میسازد تا اطلاعات را از انواع دادههای پیچیده، شاخه در ساختار دادهها استخراج کنند و اقدامات خاصی را براساس اشکال مختلف دادهها به کار گیرند.
ما امروز به اصول پایه پایبند خواهیم بود و هر چیزی را که تطبیق الگوی ساختاری برای ارائه زمان دیگری دارد را بررسی میکنیم.
بیایید به تابع get_mood() خود بازگردیم و آن را با یک نحو بیان کلید مانند بازنویسی کنیم. بر خلاف بسیاری از زبانهای برنامهنویسی دیگر، پایتون از کلید واژه تطابق به جای کلید استفاده میکند. مورد کلمه کلیدی یکسان است.
در اینجا کد اشاره میکند:
برای یادآوری:
از کلمه کلیدی مورد استفاده برای ارزیابی یک شرط استفاده کنید (مورد «دوشنبه» برابر است با if day == ‘Monday’)
جداسازی شرایط چندگانه با اپراتور پایپ — |
— به عنوان مثال، اگر دو مقدار ورودی باید به مقدار بازده یکسان منجر شود.
از اپراتور زیرخط — _
— برای مشخص کردن مورد پیشفرض استفاده کنید.
و تطبیق الگوی ساختاری شما وجود دارد - حداقل اصول اولیه آن. این تنها یکی از ویژگیهای جالب و جدید است که به زودی در پیتون ۳.۱۰ ظاهر میشود.
افکار نهایی
پایتون ۳.۱۰ بسیاری از ویژگیهای هیجانانگیز را به ارمغان میآورد، اما هنوز هم در آلفا است. از آنجا که آماده تولید نیست، ممکن است ایده خوبی برای نصب آن به عنوان نسخه پایتون پیشفرض شما نباشد.
امروز ما احتمالا هیجانانگیزترین ویژگی جدید را پوشش دادهایم، اما بقیه نیز در مقالات آینده پوشش داده خواهند شد.
این متن با استفاده از ربات مترجم مقاله تکنولوژی ترجمه شده و به صورت محدود مورد بازبینی انسانی قرار گرفته است.در نتیجه میتواند دارای برخی اشکالات ترجمه باشد.
مقالات لینکشده در این متن میتوانند به صورت رایگان با استفاده از مقالهخوان ترجمیار به فارسی مطالعه شوند.
مطلبی دیگر از این انتشارات
فیزیک کوانتوم برای ساخت هولوگرامهای بهتر
مطلبی دیگر از این انتشارات
قهوه و سیگار: مطالعات جدید ارتباطی غیرمنتظره را آشکار میکند
مطلبی دیگر از این انتشارات
چین برنامههای آیفون و اندروید را برای ارز دیجیتال خود راهاندازی میکند.