تعریف متغیر

متغیر در زبان‌های برنامه نویسی به ظرفی اشاره دارد که به صورت موقت داده‌ای را درون حافظه ذخیره می‌کند.
برخلاف سایر زبان‌های برنامه نویسی، پایتون هیچ دستوری برای تعریف متغیر ندارد.
متغیر زمانی که یک مقدار را به آن اختصاص دهید ایجاد می‌شود.

# Input
x = 5
y = "John"
print(x)
print(y)

# Output
5
John

برای تعریف متغیر لازم نیست که نوع آن اعلام شود و حتی می‌توان نوع متغیر را پس از تنظیم تغییر داد.

# Input
x = 4 # x is of type int
x = "Sally" # x is now of type str
print(x)

# Output
Sally

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

# Input
x = "John"
print(x)
# double quotes are the same as single quotes:
x = 'John'
print(x)

# Output
John
John

نام متغیر

یک متغیر می‌تواند دارای یک اسم کوتاه (مانند x و y) یا یک نام توصیفی (مانند age, carname, total_value) باشد. برای تعریف متغیر در پایتون باید قوانین زیر رعایت شود:

  • نام متغیر باید با یک حرف یا علامت Underscore شروع شود.
  • نام متغیر نمی‌تواند با یک عدد شروع شود.
  • در نام متغیر فقط می‌توان از حروف، اعداد و علامتUnderscore استفاده کرد و استفاده از کاراکترهای دیگر مجاز نیست.
  • نام متغیر به حروف کوچک و بزرگ حساس است. به عنوان نمونه Age, age, AGE سه متغیر متفاوت از هم هستند.
# Legal variable names
myvar = "John"
my_var = "John"
_my_var = "John"
myVar = "John"
MYVAR = "John"
myvar2 = "John"

# Illegal variable names
2myvar = "John"
my-var = "John"
my var = "John"

در صورت رعایت نکردن قوانین نام‌گذاری متغیر با خطای زیر برخورد می‌کنید.

SyntaxError: invalid syntax

نکته: به یاد داشته باشید نام متغیر حساس به حروف بزرگ و کوچک است.

اختصاص دادن مقدار به چند متغیر

پایتون به شما این امکان را می‌دهد در یک خط چند مقدار را به چند متغیر اختصاص دهید.

# Input
x, y, z = "Orange", "Banana", "Cherry"
print(x)
print(y)
print(z)

# Output
Orange
Banana
Cherry

و می‌توانید در یک خط یک مقدار را به چند متغیر اختصاص دهید.

# Input
x = y = z = "Orange"
print(x)
print(y)
print(z)

# Output
Orange
Orange
Orange

خروجی متغیرها

دستور Print برای نمایش خروجی متغیرها استفاده می‌شود.
برای ترکیب متن و متغیر از کاراکتر + استفاده کنید.

# Input
x = "awesome"
print("Python is " + x)

# Output
Python is awesome

همچنین می‌توانید از کاراکتر + استفاده کنید تا یک متغیر را به متغیر دیگری اضافه کنید.

# Input
x = "Python is "
y = "awesome"
z =  x + y
print(z)

# Output
Python is awesome

برای اعداد کاراکتر + به عنوان یک عملگر ریاضی کار می‌کند.

# Input
x = 5
y = 10
print(x + y)

# Output
15

اگر سعی کنید یک رشته و یک عدد را با هم ترکیب کنید پایتون به شما خطا می دهد.

# Input
x = 5
y = "John"
print(x + y)

# Output
TypeError: unsupported operand type(s) for +: 'int' and 'str'

متغیرهای جهانی

متغیرهایی که خارج از یک تابع ایجاد شده‌اند (مانند همه‌ی مثال‌های فوق) به عنوان متغیر جهانی شناخته می‌شوند.
متغیرهای جهانی چه در داخل تابع و چه در خارج از آن قابل استفاده هستند.
در مثال زیر یک متغیر در خارج از تابع ایجاد و از آن در داخل تابع استفاده شده است.

# Input
x = "awesome"

def myfunc():
    print("Python is " + x)

myfunc()

# Output
Python is awesome

اگر یک متغیر با همین نام را درون یک تابع ایجاد کنید، این متغیر محلی خواهد بود و فقط در داخل تابع قابل استفاده است. متغیر جهانی با همین نام همانطور که هست با مقدار اصلی و جهانی باقی می‌ماند.
در مثال زیر یک متغیر همنام با متغیر جهانی، داخل تابع ایجاد شده است.

# Input
x = "awesome"

def myfunc():
    x = "fantastic"
    print("Python is " + x)

myfunc()

print("Python is " + x)

# Output
Python is fantastic
Python is awesome

کلمه کلیدی global

به طور معمول وقتی یک متغیر را در یک تابع ایجاد می‌کنید آن متغیر محلی است و فقط در داخل آن تابع قابل استفاده است.
برای ایجا یک متغیر جهانی در داخل یک تابع می‌توانید از کلمه کلیدی global استفاده کنید.
اگر از کلمه کلیدی global استفاده کنید متغیر متعلق به محدوده جهانی است.

# Input
def myfunc():
    global x
    x = "fantastic"

myfunc()

print("Python is " + x)

# Output
Python is fantastic

همچنین اگر می‌خواهید یک متغیر جهانی را درون یک تابع تغییر دهید از کلمه کلیدی global استفاده کنید.

# Input
x = "awesome"

def myfunc():
    global x
    x = "fantastic"

myfunc()

print("Python is " + x)

# Output
Python is fantastic

منابع
w3schools.com –Python Variables
Photo by Kevin Ku from Pexels

نظر دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *