فارسی
باز کردن در Telegram

پست🔥 متغیرها در پایتون؛ چیزی فراتر از "x = 10"

12 سپتامبر 2026
I
🔥 متغیرها در پایتون؛ چیزی فراتر از "x = 10" وقتی می‌گوییم: x = 10 در واقع پایتون یک «جعبه» به نام "x" نمی‌سازد که عدد ۱۰ داخل آن قرار گرفته باشد؛ بلکه نام "x" را به یک شیء (Object) در حافظه متصل می‌کند. 1.متغیر در پایتون واقعاً چیست؟ در زبان‌هایی مانند C، معمولاً متغیر را به‌عنوان یک محل مشخص در حافظه در نظر می‌گیریم؛ اما در پایتون: متغیر بیشتر شبیه یک نام (Name) است که به یک شیء اشاره می‌کند. x = 10 y = x print(x) # 10 print(y) # 10 در اینجا "x" و "y" هر دو به یک شیء اشاره می‌کنند. print(x is y) ممکن است خروجی: True باشد؛ چون هر دو نام به همان شیء اشاره دارند. ━━━━━━━━━━━━━━━━━━ 2. تفاوت "==" و "is"؛ نکته‌ای بسیار مهم! 🔹 "==" بررسی می‌کند که آیا مقدار دو شیء برابر است یا نه. 🔹 "is" بررسی می‌کند که آیا دو نام دقیقاً به یک شیء اشاره می‌کنند یا نه. a = [1, 2, 3] b = [1, 2, 3] print(a == b) # True print(a is b) # False چرا؟ چون محتوا یکسان است، اما دو لیست مستقل در حافظه ساخته شده‌اند. از "is" برای مقایسهٔ مقادیر معمولی استفاده نکنید؛ کاربرد اصلی آن بررسی هویت شیء است. ━━━━━━━━━━━━━━━━━━ 3.متغیرها Type ندارند؛ Objectها Type دارند! این جمله یکی از مهم‌ترین نکات پایتون است: «در پایتون، متغیر نوع ثابت ندارد؛ این شیء است که نوع دارد.» x = 10 print(type(x)) # int x = "Python" print(type(x)) # str x = [1, 2, 3] print(type(x)) # list نام "x" تغییر نکرده است؛ اما هر بار به شیئی با نوع متفاوت اشاره می‌کند. به این ویژگی می‌گوییم: Dynamic Typing ━━━━━━━━━━━━━━━━━━ 4. Mutable و Immutable یکی از کلیدی‌ترین مفاهیم پایتون Immutable (تغییرناپذیر): - "int" - "float" - "str" - "tuple" - "bool" - "frozenset" Mutable (تغییرپذیر): - "list" - "dict" - "set" ━━━━━━━━━━━━━━━━━━ 5.Scope متغیرها کجا قابل دسترسی هستند؟ پایتون از قانون معروف LEGB استفاده می‌کند: - L → Local - E → Enclosing - G → Global - B → Built-in مثال: x = "global" def outer(): x = "enclosing" def inner(): x = "local" print(x) inner() outer() خروجی: local پایتون ابتدا در محدودهٔ Local جست‌وجو می‌کند، سپس Enclosing، بعد Global و در نهایت Built-in. ━━━━━━━━━━━━━━━━━━ 6.چند انتسابی (Multiple Assignment) پایتون اجازه می‌دهد چند متغیر را هم‌زمان مقداردهی کنید: a, b, c = 10, 20, 30 حتی جابه‌جایی بدون متغیر کمکی: a, b = b, a در واقع پایتون ابتدا مقادیر سمت راست را آماده کرده و سپس آن‌ها را به نام‌های سمت چپ اختصاص می‌دهد. ━━━━━━━━━━━━━━━━━━ 7.حذف متغیر با "del" x = 10 del x بعد از این دستور، نام "x" دیگر در آن Scope وجود ندارد. ⚠️ "del" لزوماً به معنای نابودی فوری شیء نیست؛ فقط یک Reference را حذف می‌کند. اگر شیء مرجع دیگری نداشته باشد، ممکن است توسط Garbage Collector مدیریت شود. ━━━━━━━━━━━━━━━━━━ 8. نام‌گذاری حرفه‌ای متغیرها نام خوب باید: ✔️ معنی‌دار باشد. ✔️ کوتاه اما واضح باشد. ✔️ از "snake_case" استفاده کند. ✔️ با کلمات رزروشده تداخل نداشته باشد. نام بد: x = 86400 نام بهتر: SECONDS_PER_DAY = 86400 نام‌گذاری مناسب، خوانایی کد را به‌شدت افزایش می‌دهد. ━━━━━━━━━━━━━━━━━━ جمع‌بندی نهایی متغیر در پایتون فقط یک نام برای نگهداری مقدار نیست؛ بلکه بخشی از یک سیستم مبتنی بر Object، Reference، Scope و مدیریت حافظه است. پایتون را فقط با حفظ سینتکس یاد نگیرید؛ مدل ذهنی پشت زبان را یاد بگیرید. 🐍 #پایتون #آموزش_متغیرها @comma_code1
3 · 335 ·

در همان حوالی فید

⁩⁩این ویدئو کوتاه میتونه خیلی خوب تفاوت های الگوریتم های bfs و dfs رو نشون بده⁩⁩این پیام هیچ ارتباطی به محتوای کانال نداره ولی رفقا هر چیزی که دارید محکم بچسبیدش(حتی یه استکان چایی خوری) و هیچ وقت فکر فروشش رو نکنید . اونجوری که اخبار رو خو
این پیام
⁩⁩سلام رفقا قسمت ۲۲ دوره مبانی کامپیوتر و برنامه‌نویسی منتشر شد و میتونید از طریق لینک زیر تماشا کنید https://www.aparat.com/v/jtu0650 در این قسمت گفتیم که برای ت⁩⁩روز برنامه نویس رو به همتون تبریک میگم
ببرنامه‌نویسی comma.code | computer| کاما کد|برنامه‌نویسی comma.code | computer| کاما کد|@comma_code1 · کانال
2 676مشترک197میانگین دسترسی پست
فید انجمن باز کردن در Telegram

فید عمومی باز از ایندکس جست‌وجو ChatCrawler — «Google برای Telegram عمومی»؛ با خزش انجمن به‌روز می‌شود. زمان‌ها به UTC است.

فقط محتوای عمومی، API رسمی Telegram. دربارهٔ ما · پرسش‌ها · محدودیت‌های ایندکس · حذف یک صفحه · کاتالوگ · جست‌وجو · روش محاسبهٔ ما