متغیرها – پایتون (python variables) #
متغیر های محلی برای ذخیره مقادیر داده ها در پایتون هستن.
بعد از مطالعه کامنت ها در پایتون حالا باید بریم سراغ ساخت متغیر ها در پایتون
ساخت متغیرها #
پایتون هیچ دستور و فرمانی برای اعلان متغیر نداره.
یک متغیر لحظه ای ایجاد میشه که برای اولین بار یک مقدار بهش اختصاص میدید.
x = 5
y = "John"
print(x)
print(y)
متغیر ها نیازی به اعلان با نوع خاصی ندارن و حتی میشه بعد از تنظیم نوع خودشون رو تغییر بدن.
x = 4 # x is of type int
x = "Sally" # x is now of type str
print(x)
ریخته گری #
اگر میخواید نوع داده یک متغیر رو مشخص کنید، این کار را میشه با ریخته گری انجام داد.
x = str(3) # x will be '3'
y = int(3) # y will be 3
z = float(3) # z will be 3.0
نوع را دریافت کنید #
شما میتونید نوع داده یک متغیر رو با تابع ()type به دست بیارید.
x = 5
y = "John"
print(type(x))
print(type(y))
نقل قول های تک یا جفت؟ #
متغیر های رشته ای رو میشه با استفاده از ‘نقل قول های تک’ یا “نقل قول های جفت” اعلام کرد:
x = "John"
# is the same as
x = 'John'
حساس به حروف کوچک و بزرگ #
نام متغیر ها به حروف بزرگ و کوچک حساس هستن.
این دو متغیر با هم متفاوت هستن:
a = 4
A = "Sally"
#A will not overwrite a
نام های متغیر #
یک متغیر میتونه یک اسم کوتاه داشته باشه مثل x و y یا یک اسم توصیفی که شرح بده داخل متغیر چی ذخیره شده مثل (age, carname, scores, students). قوانین متغیر های پایتون به این شکله:
- نام یک متغیر حتما باید با یک حرف یا زیر خط یا همون آندر لاین شروع بشه.
- نام یک متغیر نمیتونه با عدد شروع بشه
- نام یک متغیر فقط میتونه حروف الفبا و عدد و آندر لاین داشته باشه(A-z, 0-9, _)
- نام یک متغیر به حروف بزرگ و کوچک حساس هست. برای مثال age با Age و AGE سه متغیر متفاوت هستن.
- نام یک متغیر نمیتونه از کیورد های پایتون(python keywords) باشه.
مثال برای نام های مجاز:
myvar = "John"
my_var = "John"
_my_var = "John"
myVar = "John"
MYVAR = "John"
myvar2 = "John"
مثال برای نام های غیر مجاز:
2myvar = "John"
my-var = "John"
my var = "John"
نام متغیر های چند کلمه ای #
خوندن متغیر هایی که اسمشون بیشتر از یک کلمه داشته باشه رو سخت میشه خوند.
پایتون برای خوندن ساده تر اینجور متغیر ها چند تکنیک داره:
Camel Case
هر کلمه به جز اولین کلمه با حروف بزرگ شروع میشه:
myVariableName = "John"
Pascal Case
هر کلمه با حروف بزرگ شروع میشه:
MyVariableName = "John"
Snake Case
هر کلمه با یک زیر خط از هم جدا میشه:
my_variable_name = "John"
چندین مقدار برای چندین متغیر #
شما در پایتون میتونید تو یک خط چند متغیر جداگانه رو با مقادیر متفاوت تعریف کنید:
x, y, z = "Orange", "Banana", "Cherry"
print(x)
print(y)
print(z)
توجه: مطمئن بشید که تعداد متغیر ها با تعداد مقادیر مطابقت داشته باشه، در غیر اینصورت با خطا مواجه میشید
یک مقدار به چندین متغیر #
همچنین شما میتونید یک مقدار رو به چندتا متغیر در یک خط اختصاص بدید:
x = y = z = "Orange"
print(x)
print(y)
print(z)
خروجی متغیر ها #
اغلب از تابع پایتونی ()print برای نشون دادن خروجی متغیر ها استفاده میکنیم.
x = "Python is awesome"
print(x)
توی این تابع شما میتونید از چند متغیر داخلش برای چاپ خروجی استفاده کنید و با کاما ( , ) از هم جدا کنید:
x = "Python"
y = "is"
z = "awesome"
print(x, y, z)
همچنین میتونید از عملگر + برای خروجی چند متغیر استفاده کنید:
x = "Python "
y = "is "
z = "awesome"
print(x + y + z)
باید توجه کنید که اگر بعد از مقدار “python ” و “is ” فاصله نزارید خروجی کد بالا “pythonisawsome” میشه.
برای مقادیر عددی + به عنوان عملگرد ریاضی کار میکنه:
x = 5
y = 10
print(x + y)
خروجی کد بالا عدد 15 میشه.
داخل تابع ()print اگر شما بخواید که یک مقدار عددی با یک مقدار رشته ای رو با استفاده از عملگر + ادقام کنین، از طرف پایتون خطا دریافت میکنید:
x = 5
y = "John"
print(x + y)
بهترین کار برای اینکار که بخوایم یک مقدار رشته ای رو با یک مقدار عددی ادقام کنیم و باهم داخل یک تابع ()print استفاده کنیم اینه که اون هارو با استفاده از یک کاما از هم جدا کنیم، اینجوری دیک دیتا تایپ های مختلف رو میتونیم کنار هم دیگه پرینت بگیریم:
x = 5
y = "John"
print(x, y)
متغیر های سراسری (Global) #
باید بدونید که متغیر هایی که خارج یک تابع ایجاد میشن (مثل همه مثال های بالا) به عنوان متغیر های سراسری شناخته میشن.
پس، متغیر های سراسری میتونن برای همه استفاده بشن، چه داخل توابع و چه خارج اونها.
تو مثال زیر یک متغیر بیرون تابع ایجاد کردیم و ازش داخل تابع استفاده کردیم:
x = "awesome"
def myfunc():
print("Python is " + x)
myfunc()
اگر متغیری با همین نام داخل یک تابع ایجاد کنیم، این متغیر محلی میشه و فقط داخل تابع قابل استفاده میشه. متغیر سراسری با همون اسم و به همون شکلی که بود، سراسری و با مقدار اصلی باقی میمونه.
تو مثال زیر داخل یه تابع، با همون نام متغیر جهانی ایجاد میکنیم:
x = "awesome"
def myfunc():
x = "fantastic"
print("Python is " + x)
myfunc()
print("Python is " + x)
کلمه کلیدی global #
به طور معمول وقتی یک متغیر رو داخل یک تابع ایجاد میکنیم، اون متغیر محلی هستش و فقط میتونه داخل همون تابع استفاده بشه.
برای ایجاد یک متغیر سراسری داخل یه تابع، میتونید از کلمه کلیدی global استفاده کنید.
اگر از کلمه کلیدی global استفاده کنید، اون متغیر متعلق به کل اون اسکوب کد میشه:
def myfunc():
global x
x = "fantastic"
myfunc()
print("Python is " + x)
تو مثال بالا یک متغیر با استفاده از کلمه کلیدی global داخل یک تابع ایجاد کردیم و ازش بیرون تابع استفاده کردیم.
همچنین میتونید از کلمه کلیدی global استفاده کنید تا یک متغیر سراسریه داخل یک تابع رو تغییر بدید.
برای تغییر مقدار یک متغیر سراسری داخل یک تابع باید با استفاده از همین کلمه کلیدی به اون متغیر اشاره کنیم:
x = "awesome"
def myfunc():
global x
x = "fantastic"
myfunc()
print("Python is " + x)