📌 مقایسه زنجیرهای در پایتون (Chained Comparison)
یکی از ویژگیهای جالب و در عین حال فریبدهنده پایتون، مقایسههای زنجیرهای هست (
خلاصه این مورد: مثل چسباندن چند شرط مقایسهست)
🔸 وقتی در پایتون مینویسی:
5 > 3 == True
پایتون این رو به صورت زیر تفسیر میکنه:
(5 > 3) and (3 == True) ⛔️
در نتیجه چون:
5 > 3 درسته
و 3 == True ❌ اشتباهه (چون True یعنی عدد 1)
پس نتیجهی کل میشه:
False
⬟〰️⬟〰️⬟〰️⬟〰️⬟
✅ پس چطور باید درست بنویسیم؟ 🤔
اگه منظورت اینه که نتیجهی 5 > 3 با True مقایسه بشه، باید از پرانتز استفاده کنی:
(5 > 3) == True # این یکی میشه True
⬟〰️⬟〰️⬟〰️⬟〰️⬟
🧠 چرا این ویژگی اصلاً وجود داره؟
چون پایتون میخواد شبیه ریاضی رفتار کنه! مثلاً:
1 < x < 10
یعنی:
(1 < x) and (x < 10)
خیلی ساده و زیبا!
⬟〰️⬟〰️⬟〰️⬟〰️⬟
⚠️ نکات آموزشی مهم:
تو مقایسههای زنجیرهای:
- مقدار وسط در هر دو مقایسه استفاده میشه
- برای جلوگیری از اشتباه، از پرانتز کمک بگیر!
- اگر در مقایسههای زنجیرهای از عملگرهای منطقی مانند and یا or استفاده کنید، ترتیب ارزیابی اهمیت پیدا میکند. برای مثال:
a < b < c or d < e
در اینجا، ابتدا مقایسههای زنجیرهای انجام میشوند و سپس عملگر or ارزیابی میشود. برای کنترل دقیقتر ترتیب ارزیابی، میتوانید از پرانتز استفاده کنید:
(a < b < c) or (d < e)
این ویژگی پایتون به شما این امکان را میدهد که کدهای خود را به صورت خواناتر و مشابه با نحوه نگارش ریاضیاتی بنویسید.
💯 @PythonForYou 🧑💻👩💻