🐍 آموزش متغیرهای Local و Global
🔹 متغیر Local چیست؟
متغیری که داخل یک تابع تعریف میشه، معمولاً یک متغیر محلی یا "Local" محسوب میشه.
def show_message():
message = "Hello Python!"
print(message)
show_message()
خروجی:
Hello Python!
📌 متغیر "message" داخل تابع تعریف شده و خارج از اون مستقیماً قابل دسترسی نیست.
━━━━━━━━━━━━━━━━━━
🔹 متغیر Global چیست؟
متغیری که در سطح اصلی برنامه تعریف میشه، متغیر سراسری یا "Global" نام داره.
name = "Ali"
def greet():
print(f"Hello {name}!")
greet()
print(name)
خروجی:
Hello Ali!
Ali
✅ تابع میتونه مقدار متغیر سراسری رو بخونه؛ حتی اگر اون متغیر داخل تابع تعریف نشده باشه.
━━━━━━━━━━━━━━━━━━
🔹 تغییر متغیر Global داخل تابع
اگر بخوایم مقدار یک متغیر سراسری رو مستقیماً از داخل تابع تغییر بدیم، میتونیم از کلمهٔ کلیدی "global" استفاده کنیم.
counter = 0
def increase():
global counter
counter += 1
increase()
increase()
print(counter)
خروجی:
2
📌 دستور "global counter" مشخص میکنه که منظورمون متغیر سراسری "counter" هست، نه یک متغیر محلی جدید.
⚠️ استفادهٔ بیشازحد از "global" میتونه مدیریت و عیبیابی برنامه رو سختتر کنه؛
━━━━━━━━━━━━━━━━━━
🔹 یک نکتهٔ مهم دربارهٔ متغیرهای همنام
اگر داخل تابع متغیری با نام یک متغیر سراسری تعریف کنیم، متغیر محلی میتونه آن متغیر سراسری رو تحتالشعاع قرار بده.
number = 100
def show_number():
number = 50
print(number)
show_number()
print(number)
خروجی:
50
100
💡 تغییر متغیر محلی "number" باعث تغییر متغیر سراسری همنام اون نشد.
━━━━━━━━━━━━━━━━━━
🧠 تمرین
1️⃣ متغیری به نام "username" در سطح اصلی برنامه تعریف کن و مقدارش رو داخل یک تابع نمایش بده.
2️⃣ تابعی بنویس که یک متغیر محلی تعریف کنه و مقدارش رو با "return" برگردونه.
━━━━━━━━━━━━━━━━━━
#آموزش_پایتون
#برنامه_نویسی
#کاما_کد
🔥1
127 ·