Python - Global Variables

🔹 متغیر Global یعنی متغیری که خارج از همه توابع تعریف شده باشه و در تمام کد قابل دسترسه.

۱. تعریف متغیر سراسری

x = "Python" # متغیر سراسری def myFunc(): print("I love", x) myFunc()

📌 خروجی:

I love Python

۲. متغیر محلی (Local)

متغیرهایی که داخل تابع تعریف میشن، فقط داخل همون تابع قابل استفاده هستن:

def myFunc(): y = "Hello" # متغیر محلی print(y) myFunc() print(y) # خطا میده چون y محلیه

📌 خروجی:

Hello NameError: name 'y' is not defined

۳. متغیر هم‌نام در سطح محلی

اگر متغیر داخل تابع هم‌نام با متغیر سراسری باشه، متغیر محلی اولویت داره:

x = "Python" def myFunc(): x = "Java" print("I love", x) myFunc() print("I love", x)

📌 خروجی:

I love Java I love Python

۴. استفاده از کلمه کلیدی global

با global می‌تونیم داخل تابع هم به متغیر سراسری دسترسی داشته باشیم یا حتی متغیر سراسری جدید بسازیم:

def myFunc(): global x x = "Python" myFunc() print("I love", x)

📌 خروجی:

I love Python

نکته:

  • متغیرهای سراسری در کل برنامه قابل استفاده هستن.

  • بهتره برای جلوگیری از خطا و گیج شدن، تا حد امکان از global زیاد استفاده نکنید و داده‌ها رو با ورودی/خروجی توابع جابه‌جا کنید.