با سلام
#operators
بهنام صباغی در خدمتتونم با جلسه ی سوم از اموزش مقدماتی پایتون
توی این قسمت میخوام در مورد عملگرها صحبت کنم
دسته ی اول عملگرهای محاسباتی هستند که مه باهاشون اشنا هستند ( بعلاوه و منها و ضرب و تقسیم )
بعلاوه :: تقریبا روی انواع داده ها کار میکنه از جمله متغیر های صحیح و اعشاری که بدون مشکل میتونید با هم جمعشون کنید و بعد از جمع کردن به نوع داده ی وسیعتر تبدیل میشه مثلا اگر شما عدد 2 که یک عدد صحیح هست رو با عدد 3.1 که یک عدد اعشاره جمع کنید حاصل عدد 5.1 هست که یک عدد اعشاره

ادامه اموزش در ادامه مطالب

در مورد استرینگ ها هم میشه از عملگر بعلاوه استفاده کرد یعنی مثلا من میتونم توی پایتون عبارت
print('python' + ' is good')
رو بنویسم و چیزی که میگیرم هست
python is good
یه نکته این که نمیشه نوع داده ی رشته ای رو با نوع عددی جمع کرد مثلا اگر بنویسم
print('python' + 3.5)
بهم ارور زیر رو میده
Traceback (most recent call last):
  File "<pyshell#3>", line 1, in <module>
    print('behnam'+1)
TypeError: Can't convert 'int' object to str implicitly
که داره در واقع بهم میگه که نوع صحیح رو به صورت ضمنی نمیشه به استرینگ تبدیل کرد و شما میتونید بجاش اینطور بنویسید
print('python'+ str(3.5))
درواقع تابع
str(3.5)
داره برای ما 3.5 رو تبدیل میکنه به رشته یعنی بجای اون تابع برگردونده میشه '3.5' یعنی در واقع دوتا رشته با هم جمع میشند که مشکلی هم نیست بذارید یکم بیشتر در مورد این نوع تابع ها توضیح بدم امیدوارم انواع داده ها رو یادتون باشه (^_^) حالا توابعی با همون نام وجود دارند که برای تبدیل داده ها به یکدیگر بکار میرند مثلا فرض کنید من میخوام مقدار اعشاری 3.5 رو به معادلش توی اینت تبدیل کنم باید بنویسم
print(int(3.5))
و برای من مقدار 3 چاپ میشه یعنی چون از یک ظرف بزرگتر بردیم به یک ظرف کوچیکتر یک مقدار از دادمون رو از دست دادیم و به این توجه کنید که عددمون رند نشد یعنی اگر برای 3.6 هم همین کار رو انجام بدیم باز همین اتفاق میوفته و عدد 3 چاپ میشه بقیه ی این توابع هم اینها هستند
float(var)
str(var)
list(var)
tuple(var)
یه نکته ی لازم به ذکر اینه که برای لیست و تاپل نمیشه یک عدد قرار داد باید یه بازه از اعداد رو قرار بدید برای گرفتن یک بازه از اعداد از تابع
range(start ,stop, step)
خب شما میتونید موقع نوشتن فقط یک مقدار داخل پرانتز جلوی اون بنویسید که در این صورت این مقدار بجای
stop
یعنی انتها قرار میگیره و به صورت خودکار شروع از صفر و اعداد با گام یک در نظر گرفته میشند مثلا
print(list(range(10)))
برای شما اعداد 0 تا 10 رو چاپ میکنه که خود 10 جزء اونها نیست یعنی چاپ میکنه
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
خب حالا اگر بهش دوتا مقدار بدید یعنی بنویسید
print(list(range(10,20)))
عدد اول رو استارت درنظر میگیره و عدد دوم رو استاپ یعنی اعداد بین 10 و بیست رو چاپ میکنه که خود 20 جزء اونها نیست حالا اگر عنصر سوم اضافه بشه به صورت زیر
print(list(range(3,15,2)))
خروجیمون میشه
[3, 5, 7, 9, 11, 13]
یعنی از 3 شروع شده و تا 15 دوتا دوتا رفته ولی بازم میبینید که خود 15 جزءش نیست
برای تاپل هم همینطوره و یادتون باشه از این روش برای تبدیل داده ها هم میشه استفاده کرد به مثال زیر دقت کنید
MyTuple=tuple(range(10))
MyList=list(MyTuple)
حالا اگر لیستتون رو چاپ کنید میشه
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
و اگر تاپلتون رو چاپ کنید میشه
(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)
دقت کنید برای لیست از کروشه استفاده میکنیم ولی برای تاپل از پرانتز
راستی توجه کنید که پایتون به حروف بزرگ و کوچیک حساسه یعنی مثلا
var != VAR
پس توی نامگذاری متغیر ها و استفاده از اونها دقت کنید
من یه مورد دیگه میگم و بقیه رو میذارم به عنوان تمرین به عهده ی خودتون
عمل ضرب هم روی استرینگ ها و اعداد صحیح جواب میده مثلا بنویسید
print(6*'ali ')
خروجی میشه
ali ali ali ali ali ali




حالا به عنوان تمرین عملگر های محاسباتی رو روی بقیه ی انواع داده ای که توی جلسه ی قبل معرفی کردم تست کنید تا ببینید روی کدوم نوع داده کدوم عملگر کار نمیکنه

#python