
متن فیلم
توی برنامهنویسی کامپیوتری، متغیرها یه مفهوم اساسیاند که با نحوه ذخیره و پردازش دادهها ارتباط دارن. بیاین ببینیم این یعنی چی. لطفا هر سلول کد این درس رو همون ترتیبی که من از بالا به پایین انجام میدم، اجرا کنید. اگه همه سلولها رو به همون ترتیب اجرا نکنید، ممکنه خطاهای غیرمنتظرهای براتون پیش بیاد، این خیلی مهمه. بذارید با یه تیکه کد این رو نشونتون بدم. قراره بگم age مساوی ۲۸. و کاری که این میکنه اینه که یه متغیر میسازه و عدد ۲۸ رو توش ذخیره میکنه. خب حالا اگه بگم print age، حدس بزنید چی میشه؟ این عدد ۲۸ رو چاپ میکنه. بیاین با جزئیات ببینیم اینجا دقیقا چی شد. با خط کد Age مساوی ۲۸. چیزی که به پایتون میگید اینه که یه فضا ایجاد کنه، که میتونید اون رو مثل یه جعبه خالی در نظر بگیرید، تا عدد ۲۸ رو توش ذخیره کنه. و هر وقت من از این متغیر age استفاده میکنم، پایتون میدونه منظورم ۲۸ ئه. حالا میتونم تصمیم بگیرم چیزی که age ذخیره میکنه رو عوض کنم. اگه یه خط کد داشته باشم که بگه age مساوی پنج، این سن دخترمه. اون وقت این یعنی، اون مقدار قبلی که توی جعبه ذخیره کرده بودیم، یعنی ۲۸، رو فراموش کن. بیاین اون رو حذف کنیم و به جاش عدد پنج رو توی این جعبه ذخیره کنیم. پس حالا age مساوی پنج ئه. خب، برای نشون دادن این توی کد، در این لحظه age مساوی ۲۸ ئه. اما اگه حالا بگیم age مساوی پنج و بعدش age رو پرینت کنیم، age الان با عدد پنج جایگزین شده. متغیرها میتونن برای ذخیره string ها یا عددها استفاده بشن. توی مثالی که دیدیم، ما مقدار ۲۸ رو به age اختصاص دادیم. یا میتونید یه متغیر به اسم name داشته باشید و string Otto رو بهش اختصاص بدید. یا اگه یه کوتوله باغچه دارید، میتونید یه متغیر به اسم gnome height بسازید و عدد ۷.۱۲ رو توش ذخیره کنید. بیاین ببینیم این توی کد چطوری کار میکنه. پس، من میگم name مساوی Otto، gnome height مساوی ۷.۱۲. و اگه بخوام از یه f-string برای چاپ متغیر age استفاده کنم، این age پنج رو چاپ میکنه. و به همین ترتیب حالا که name رو Otto و gnome height رو ۷.۱۲ تنظیم کردم، میتونم name Otto gnome height ۷.۱۲ رو چاپ کنم. وقتی دارید متغیرها رو تعریف میکنید، مهمه که دقیقا از همون اسم استفاده کنید. پس، اگه این رو به Gnome height تغییر بدم. این کار نمیکنه، این یه پیام خطا تولید میکنه. ببینید من دقیقا از همون اسم استفاده کردم تا درست باشه، و تغییر حروف کوچک و بزرگ پایتون رو گیج میکنه. پس، متغیرها میتونن برای دادن یه مقدار مثل سن یه نفر، یه اسم برای استفاده بعدی توی یک یا چند جا استفاده بشن. یکی دیگه از کاربردهای رایج متغیر اینه که از همون اسم برای اشاره به مقداری که تغییر میکنه، استفاده کنیم. پس، مثلا اگه دارید بازی تتریس میکنید، امتیازتون ممکنه از صفر شروع بشه، اما بعد از یه مدت بازی کردن، امتیازتون به ۵۰، بعد ۱۵۰ و بعد ۴۵۰ افزایش پیدا میکنه. و بعد از تموم شدن بازی، شما امتیاز بالا رو ذخیره میکنید تا دستاوردتون توی بازی تتریس رو به یادگار نگه دارید. توی این مثال، امتیازتون ممکنه از صفر شروع بشه. اما بعد از اینکه ۵۰ امتیاز دیگه توی بازی کسب کردید، میتونیم score رو مساوی score به اضافه ۵۰ قرار بدیم. پس، این یعنی مقدار قبلی score رو بگیرید، ۵۰ تا بهش اضافه کنید و از عملگر انتساب استفاده کنید. به کامپیوترتون بگید، لطفا مقدار قبلی score رو بردار و با مقدار جدید score که همون score به اضافه ۵۰ ئه، جایگزینش کن. و حالا اگه ۱۰۰ امتیاز دیگه کسب کردید، اون وقت مقدار قبلی score که ۵۰ ئه رو بگیرید و ۱۰۰ تا بهش اضافه کنید. اون رو توی جعبهای که برچسب score داره ذخیره کنید. و بنابراین حالا امتیازتون ۱۵۰ ئه. اگه ۳۰۰ امتیاز دیگه توی بازی کسب کنید، حالا امتیازتون ۴۵۰ ئه. و اگه بگید امتیاز نهاییتون score، این ۴۵۰ رو چاپ میکنه. حالا چند نکته در مورد اسم متغیرها. اگه بخواهید my score مساوی ۴۵۰ رو امتحان کنید. این یه پیام خطا ایجاد میکنه چون اسم متغیرها نمیتونن فاصله داشته باشن. اگه یه فاصله میخواهید، به جاش از یه آندرلاین مثل اون استفاده کنید. و اون کار میکنه. اگه این رو بهتون نگفته باشم. میتونید از چتبات هم بپرسید «چرا این کد کار نمیکنه؟» و اون وقت بهتون میگه، میتونید یه آندرلاین بذارید یا فقط فاصله رو حذف کنید. بیاین به یه مثال جالب از سن سگ نگاه کنیم. فرض کنیم دوستمون Otto چهل و نه سالشه. و بنابراین اگه بخواهید سن سگ اون رو حساب کنید، باید ۴۹ تقسیم بر هفت رو چاپ کنید، که میشه هفت. اگه بخواهید سن سگ Otto رو چاپ کنید، میتونید این جوری انجامش بدید. سن Otto به سال سگ ۰.۷ ئه. من میتونم متغیر dog age رو مساوی ۴۹ تقسیم بر هفت تعریف کنم. و حالا dog age مساوی هفت میشه. و جایی که این به درد میخوره اینه که اگه بخوام یه پاراگراف متن بنویسم که چندین بار به سن سگ Otto اشاره کنه. قبل از اینکه متغیر داشته باشیم، نمیتونستید این رو بنویسید، فقط کمی آزاردهنده بود که مجبور باشید چهل و نه تقسیم بر هفت رو چند بار بنویسید، و اگه Otto یه سال بزرگتر بشه، اون وقت باید بریم توی کد و این رو به ۵۰ تغییر بدیم، چند بار. در واقع یه راه بهتر برای انجام این کار وجود داره، که اینه، میتونید از این کد استفاده کنید تا همون نتیجه رو چاپ کنید در حالی که فقط یک بار سن سگ رو حساب کردید. و اگه Otto یه سال بزرگتر شد، میتونید dog age رو مساوی ۵۰ تقسیم بر هفت قرار بدید. و بعد اگه این کد رو دوباره اجرا کنم، حالا توی همه جاهای مختلف بهروز شده. پس، با یک بار تعریف کردن یه متغیر، میتونید از اون توی چند جا استفاده کنید. و به همین دلیله که متغیرها کمک میکنند برنامههای کامپیوتری خیلی کارآمدتر بشن. حتی میتونید اسم Otto رو هم عوض کنید. اگه تصمیم گرفتید به Otto با فامیلیش هم اشاره کنید، مثلا Otto Matic. اون وقت میتونید این کد رو دوباره اجرا کنید و اسم کاملش توی هر سه جا چاپ میشه. Otto Matic. امیدوارم شوخی رو فهمیده باشید. فقط برای بررسی جزئیات اینکه f-string ها و متغیرها چطوری با هم کار میکنن. این همون مثالیه که الان داشتیم، جایی که سن سگ هفت بود. و بنابراین وقتی پایتون dog age رو توی پرانتزهای فرفری پیدا میکنه، این باعث میشه که دنبال یه جعبه با اسم dog age بگرده، بعد عدد ۰.۳ رو پیدا میکنه و اون قسمت از f-string رو با ۰.۳ جایگزین میکنه. و به همین ترتیب برای دو جای دیگه، به همین دلیله که بعدش اون string رو که توی کد دیدید چاپ میکنه. این الگوی f-string که میبینید. که یه متن دارید و مقدار یه متغیر رو وارد میکنید تا string رو شخصیسازی کنید. معلوم میشه که این الگو برای شخصیسازی پرامپتی که میتونید بعدا با استفاده از یه برنامه پایتون به یه مدل زبانی هوش مصنوعی بدید، خیلی مفیده. پس، لطفا کمی وقت بذارید و با امتحان کردن تمرینهای پایین، استفاده از f-string ها و متغیرها رو با هم تمرین کنید. با چتبات صحبت کنید تا بهتون کمک کنه هر مشکلی که ممکنه باهاش روبهرو بشید رو حل کنید. و وقتی آماده بودید، توی ویدیوی بعدی بهم ملحق بشید تا نگاهی دقیقتر به استفاده از f-string ها برای ساخت پرامپتها برای مدلهای زبانی بزرگ بندازیم.