محدودههای Python
- صفحه قبلی تکرار Python
- صفحه بعدی مодуلهای Python
متغیرها تنها در محدوده ایجاد شده قابل استفاده هستند. این به عنوان محدوده شناخته میشود.
محدوده محلی
متغیرهایی که در داخل تابع ایجاد میشوند، محدوده محلی تابع هستند و تنها در داخل همان تابع قابل استفادهاند.
مثال
متغیرهایی که در داخل تابع ایجاد میشوند، تنها در داخل همان تابع قابل استفاده هستند:
def myfunc(): x = 100 print(x) myfunc()
توابع در توابع
همانطور که در مثال بالا نشان داده شده است، متغیر x در خارج تابع قابل استفاده نیست، اما برای هر تابع در داخل تابع قابل استفاده است:
مثال
توانایی دسترسی به متغیر محلی از یک تابع در داخل تابع:
def myfunc(): x = 100 def myinnerfunc(): print(x) myinnerfunc() myfunc()
محدوده جهانی
متغیرهایی که در بدنه کد پایتون ایجاد میشوند، متغیرهای جهانی هستند و به محدوده جهانی تعلق دارند.
متغیر جهانی در هر محدودهای (جهانی و محلی) قابل استفاده است.
مثال
متغیرهایی که در خارج تابع ایجاد میشوند، متغیرهای جهانی هستند و هر کسی میتواند از آنها استفاده کند:
x = 100 def myfunc(): print(x) myfunc() print(x)
نامگذاری متغیر
اگر در داخل و خارج تابع از متغیرهای同名 استفاده کنید، پایتون آنها را به عنوان دو متغیر جداگانه میپندارد، یکی در محدوده جهانی قابل استفاده است (در خارج تابع) و دیگری در محدوده محلی قابل استفاده است (در داخل تابع):
مثال
این تابع مقدار متغیر محلی x را چاپ میکند و سپس کد مقدار متغیر جهانی x را نیز چاپ میکند:
x = 100 def myfunc(): x = 200 print(x) myfunc() print(x)
کلیدواژه Global
اگر نیاز دارید که یک متغیر جهانی ایجاد کنید اما در محدوده محلی گیر کردهاید، میتوانید از کلیدواژه global استفاده کنید.
کلیدواژه global متغیر را به متغیر جهانی تبدیل میکند.
مثال
اگر از کلیدواژه global استفاده کنید، متغیر به محدوده جهانی تعلق دارد:
def myfunc(): global x x = 100 myfunc() print(x)
همچنین، اگر بخواهید مقدار یک متغیر جهانی را در داخل تابع تغییر دهید، از کلیدواژه global استفاده کنید.
مثال
برای تغییر مقدار یک متغیر جهانی در داخل تابع، از کلیدواژه global برای اشاره به این متغیر استفاده کنید:
x = 100 def myfunc(): global x x = 200 myfunc() print(x)
- صفحه قبلی تکرار Python
- صفحه بعدی مодуلهای Python