متغیرها در پایتون
پایتون یک زبان برنامهنویسی واقعاً قدرتمنده. باهاش میتونی همه آرزوها و ایدههای خلاقانهات رو به حقیقت تبدیل کنی. واسه همین، الان میخوایم با یه قسمت جذاب تو پایتون آشنا بشیم، متغیرها. متغیرها در پایتون چی هستن؟ متغیرها مثل جعبههای جادویی هستن که میتونیم توشون اطلاعات رو ذخیره کنیم و باهاشون کارای مختلف کنیم.
ما میخوایم بهتون نشون بدیم چطور متغیرها رو تو پایتون استفاده کنید. میتونید از این جعبههای جادویی برای ذخیره و کنترل دادهها استفاده کنید. با استفاده از متغیرها، میتونید توی برنامههاتون با دادهها خیلی ساده بازی کنید و اونارو به شکلی که دوست دارید تغییر بدید. برنامههایی بسازید که وابسته به ورودیها و شرایط مختلف، چیزای مختلفی انجام بدن.
پس از این به بعد، شما میتونید با متغیرها رویاهاتون رو به واقعیت تبدیل کنید. با کدنویسی و تمرین، این مبحث رو به راحتی مسلط میشید. انتخاب نامای خفن و مناسب برای متغییرهاتون هم خیلی مهمه، چون کدتون رو خواناتر و قابل فهمتر میکنه.
خلاصه اینکه، متغیرها یکی از اصول اساسی پایتون هستن و میتونن به شما کمک کنن تا دادهها رو ذخیره کنید و باهاشون کار کنید. وقتی میفهمیم چطوری از متغیرها استفاده کنیم، میتونیم باهاشون کارای متفاوتی انجام بدیم و برنامههای جالب و خاصی بسازیم. میتونیم دادهها رو تغییر بدیم، باهاشون عملیاتهای مختلفی انجام بدیم و هر چیزی که بخوایم رو بسازیم. اینجوری برنامهها میتونن وابسته به شرایط مختلف عمل کنن و خیلی قوی و کارآمد باشن.
پس تا حالا همه چیز رو متوجه شدیم میتونیم با هم به سوی دنیای شگفتانگیز برنامهنویسی پایتون بریم و با استفاده از متغیرها برنامههای جالب و خفن بسازیم. برای این کار، فقط کافیه که شما هم با من ادامه بدید و بریم سراغ کد نوشتن.
تعریف متغیر در پایتون و نحوه استفاده از آنها
در پایتون، متغیرها برای ذخیره و نگهداری دادهها استفاده میشن. شما میتوانید یک متغیر رو با استفاده از نام دلخواه خودتون تعریف کنید و به اون مقدار دلخواه اختصاص بدید. نحوه تعریف و استفاده از متغیرها در پایتون رو در ادامه باهم برسی می کنیم:
تعریف متغیر
فرض کن که داری برنامهای مینویسی که اطلاعات یه فرد رو ذخیره کنه. الان تصور کن که از متغیرها استفاده میکنی که بهت بگه چه نوع اطلاعاتی رو ذخیره و مدیریت کنی.
برای تعریف متغیر، نیاز به استفاده از نام متغییر و علامت مساوی (=) داری. اسم متغییر باید با یک حرف یا آندرلاین یا underscore _
شروع شود و میتواند شامل حروف بزرگ و کوچک، اعداد و underscore باشد. باید نام متغیر رو به شکلی انتخاب کنید که به لحاظ معنایی قابل فهم باشه برای خودتون.
قاعده تعریف متغیر:
# مقدار متغییر = نام متغییر Variable name = Value
مثال:
Name = "ali"
فرض کن که میخوای اطلاعات یه فرد رو ذخیره کنی که شامل نام، سن و قدشه. از متغیرها میتونی استفاده کنی که این اطلاعات رو نگهداری کنی.
الان، سه تا متغیر تعریف میکنی: name
برای نام فرد، age
برای سنش و height
برای قدش. هر کدوم از این متغیرها میتونن مقادیر مختلفی رو نگهداری کنن.
مثلاً میتونی به متغیر “اسم” مقدار علی رو بدی که نام فرد رو نگهداری کنه. بعد میتونی به متغیر سن عدد ۲۵ و به متغیر قد عدد ۱۸۰ رو بدی که سن و قدش رو نگهدارن.
مثال:
Name = "ali" Age = 25 Height = 180
حالا که اطلاعات تو متغیرها ذخیره شدن، میتونی از این اطلاعات استفاده کنی. برای مثال، میتونی اسم رو چاپ کنی که ببینی علی کیه. بنابراین، با استفاده از متغیرها، راحت میتونی اطلاعات رو ذخیره کنی، از اونها استفاده کنی.
استفاده از متغیر
بعد از تعریف متغیرها، شما میتونید از اونا توی برنامه خودتون استفاده کنید. برای مثال متغیرها رو میتونید در عملیات ریاضی، مقایسه، رشتهها، شرایط شرطی و سایر بخشهای برنامه استفاده کنید. ولی اول برسی میکنیم که چطور میتونیم مقدار متغیرها رو نشون بدیم؟ برای مثال اگر بخوایم متغیرهایی که بالاتر تعریف کردیم رو نشون بدیم باید این کار رو بکنیم:
Print(name) Print(age) Print(height)
تغییر مقدار متغیر
وقتی یه مقداری رو توی متغیر میذاریم، میتونیم بعداً بهش دسترسی پیدا کنیم و عدد رو تغییر بدیم. مثلاً فرض کنید میخوایم یه متغیر داشته باشیم که مقدارش 5 باشه. بعد از یه مدت میفهمیم که اشتباه کردیم و باید بهش عدد ۱۰ رو بدیم. حالا کد همین مثال رو باهم بنویسیم:
# ساخت متغیر x = 5 # نمایش مقدار اولیه print(x) # مقداردهی جدید x = 10 # نمایش مقدار جدید print(x)
پس در نهایت با استفاده از تعریف و استفاده از متغیرها میتونید اطلاعات رو در برنامه پایتون خودتون ذخیره کنید و در طول اجرای برنامه از اونا استفاده کنید. همچنین، میتونید مقادیر متغیرها رو در طول اجرای برنامه تغییر بدید.
انواع متغیرها در پایتون
در پایتون، متغیرها نوع دادهای دارن که یک نوع داده مشخص رو برای هر متغیر مشخص میکند. نوع دادههای متغیرها در پایتون به صورت خودکار تعیین میشن و نیازی نیست که نوع داده رو قبل از استفاده از متغیرها حتما اضافه کنیم. در ادامه، چند نوع دادهای پراستفاده تو پایتون رو بررسی میکنیم:
-
عدد صحیح یا Integer
نوع دادهای عدد صحیح تو پایتون به استفاده از عدد بدون اعشار میگن. حساب تجاری یکی از مثالهای خوبی برای نوع دادهای عدد صحیحه. فرض کنید که شما یک حساب بانکی دارید و موجودی حسابتون رو میخواید در یک متغیر ذخیره کنید. این موجودی میتونه یک عدد صحیح باشه، مثلاً ۱۰۰۰۰۰ تومان.
مثال:
x = 100000
-
عدد اعشاری یا Float
نوع دادهای عدد اعشاری در پایتون به استفاده از اعدادی که حاوی اعشار هستن میگن. یک مثال مناسب برای این نوع داده ای میتونه عدد pi باشه که تا بی نهایت اعشار داره.
مثال:
y = 3.14
-
رشته یا String
نوع دادهای رشته در پایتون به مقادیری میگن که بین نقل قول قرار میگیرن. حالا میتونه نقلقول تکی ' '
یا دوتایی" "
باشه. یک مثال ساده برای نوع دادهای رشته، نام یک شخصه. فرض کنید که شما میخواید نام خودتون رو در یک متغیر ذخیره کنید، این نام میتونه شامل حروف و حتی فاصله باشه، مثلاً “سارا”.
مثال:
name = "zahra"
-
لیست یا List
نوع دادهای لیست در پایتون به مجموعهای از عناصر میگن که داخل یک لیست قرار میدیم. عناصر لیست میتونن از هر نوع دادهای باشن. فرض کنید که شما میخواید لیستی از اعداد فروش یک فروشگاه رو ذخیره کنید. این لیست میتونه شامل اعداد مختلف باشه، مثلاً [۱۰, ۲۰, ۳۰, ۴۰, ۵۰]. توی این مثال، هر عدد نشان دهنده فروش روزانه است.
مثال:
numbers = [1, 2 , "ali", 4 , 5 , 12.5]
-
دیکشنری یا Dictionary
نوع دادهای دیکشنری در پایتون به صورت جفتهای کلید : مقدار است که هر جفت شامل یک کلید و یک مقدار مناسب هست. برای نوع دادهای دیکشنری، میتونیم به یک دفترچه تلفن اشاره کنیم. هر شخص دفترچه تلفن میتونه شامل یک نام (کلید) و یک شماره تلفن (مقدار) باشه.
مثال:
person = {"name": "ali", "age": 30, "city": "tehran"}
-
تاپل یا Tuple
نوع دادهای تاپل در پایتون به شکل مجموعهای از عناصره که داخل یک تاپل قرار میگیرن. تاپل شبیه لیسته، اما از نظر تغییرپذیری متفاوتن و عناصرشون غیرقابل تغییر هست. فرض کنید که شما میخواید مختصات یک مکان رو داخل یک تاپل ذخیره کنید. تاپل میتونه شامل دوتا عدد باشه که نشون دهنده عرض و طول جغرافیایی مکان مورد نظر هستند، مثلاً (۳۵.۷۱۸۹, ۵۱.۴۰۹۹).
مثال:
coordinates = (10, 20)
-
بولی یا Boolean
نوع دادهای بولی توی پایتون فقط دوتا مقدار True
و False
رو قبول میکنه و معمولا برای نشون دادن وضعیتهای منطقی استفاده میشه.
مثال:
is_valid = True
اینا فقط چند نوع دادهای رایج در پایتون هستن و پایتون از نوع دادههای دیگه هم پشتیبانی میکنه. همچنین، تو پایتون میتوانید نوع دادهای متغیرها رو با استفاده از تابع ()type
برسی کنید.
قواعد مربوط به نامگذاری Variables در پایتون
متغیرها در پایتون مثل اسامی بچهها هستن. باید بهشون اسم خوب و قشنگ بدین تا همه بتونن به راحتی باهاشون کار کنن. مثل وقتی میخواین به یه گربه خوشگل بهش اسم بدین، نامگذاری متغیرها هم باید خلاقانه و جذاب باشه.
یکی از قوانین اصلی اینه که باید فقط از حروف الفبا، اعداد و خط زیر یا آندرلاین _
استفاده کنین. میتونین اسم متغیرتون رو با یک حرف یا خط زیر _
شروع کنین. مثلاً متغیرتون رو my_variable
بنامین. ولی حواستون باشه اسم متغییر رو با عدد نمیتونید شروع کنید.
یه نکته مهم دیگه اینه که پایتون حساس به بزرگی و کوچکی حروف هست. پس لطفا myVariable
رو با myvariable
قاطی نکنین. بچهها هر کدوم اسامی مخصوص به خودشون دارن!
توی انتخاب اسم متغیرتون سعی کنین خلاق باشین و یه نام معنادار و توصیفی انتخاب کنین. مثلاً اگه میخواین تعداد کتابها رو ذخیره کنین، از num_books
استفاده کنین. ببینید، چه اسم قابل فهم و مناسبی!
بهتره از استانداردهای snake_case
یا camelCase
برای نامگذاری استفاده کنین. در استاندارد snake_case
، کلمات با استفاده از خط زیر _
جدا میشن و در استاندارد camelCase
، هر کلمه جدید با حرف بزرگ شروع میشه و بدون استفاده از فاصله یا خط زیر نوشته میشه. خب، حالا میتونید به همه بگین که یه روش نامگذاری دارید!
در نهایت یادتون باشه که اسم متغیرها باید خوانا و مفهومی باشه. همه باید بتونن به راحتی بفهمن که متغیرتون چیکار میکنه. پس اسم کوتاه و مفهومی انتخاب کنین و از حالا به بعد توی نامگذاری متغیرها، خلاق باشین و از نامهای خوب و قشنگ استفاده کنین. اینکه نامهاتون تکراری یا مبهم نباشن، خیلی مهمه. اسامی متعارف و پذیرفته شده توسط جامعه برنامهنویسی رو برای نامگذاری استفاده کنین. همچنین، از استانداردها و قوانین نامگذاری پیروی کنید تا کدتون سازگار و قابل نگهداری باشد.
استفاده از Variables local and global در پایتون
توی برنامهنویسی پایتون، دو نوع متغیر داریم: متغیرهای محلی و متغیرهای سراسری. این دو تا فرقهایی با هم دارن که اینجا قراره با هم برسیشون کنیم:
متغیرهای محلی
- متغیرهای محلی توی داخل یه بخش کد (مثلاً یه تابع یا یه قسمت شرطی) تعریف میشن و فقط توی همون بخش قابل دسترسی هستن.
- برای تعریف متغیرهای محلی معمولا از علامت
=
استفاده میشه. - متغیرهای محلی فقط توی بخشی که تعریف شدن قابل دیدن و استفاده هستن و بعد از خارج شدن از اون بخش، نمیشه بهشون دسترسی داشت.
- اگه یه متغیر محلی با همون نام توی یه بخش دیگه تعریف بشه، متغیر جدید مقدار متفاوتی خواهد داشت و هیچ ارتباطی با متغیر قبلی نداره.
متغیرهای سراسری
- متغیرهای سراسری از ابتدای برنامه، بیرون از هر بخشی تعریف میشن و توی همه قسمتهای برنامه دسترسی پیدا میکنن.
- معمولاً متغیرهای سراسری رو در بالای کد (خارج از هر تابع یا قسمت شرطی) تعریف میکنن.
- متغیرهای سراسری میتونن توی هر بخشی از کد استفاده بشن و مقدارشون در همه قسمتها تغییر میکنه.
- اگه یه متغیر محلی با همون نام توی یه بخش کدی تعریف بشه، متغیر محلی اولویت بیشتری داره و متغیر سراسری با همون نام توی اون بخش قابل دسترسی نخواهد بود. برای دسترسی به متغیر سراسری توی بخش کد، باید از کلیدواژه
global
استفاده کنی.
در کد زیر، نمونه استفاده از متغیرهای محلی و سراسری تو پایتون آورده شده:
# متغیر سراسری global_var = 10 def my_function(): # متغیر محلی local_var = 20 # دسترسی به متغیر سراسری درون تابع global global_var print(global_var) # خروجی: 10 # تغییر مقدار متغیر سراسری درون تابع global_var = 30 # نمایش مقدار متغییر محلی درون تابع print(local_var) # خروجی: 20 my_function() print(global_var) # خروجی: 30
در این مثال، متغیر global_var
به عنوان یک متغیر سراسری در سطح بالای کد تعریف شده و درون تابع my_function
مقدار آن نمایش داده میشه. متغیر local_var
هم به عنوان یک متغیر محلی داخل تابع my_function
تعریف شده و فقط درون اون تابع قابل دسترسیه.
متغیرها در پایتون و مدیریت حافظه
تصور کن که حافظهی کامپیوتر مثل یک جعبه بزرگه که میتونیم اشیا رو توش قرار بدیم. حالا این اشیا میتونند متغییرها باشن. متغیرها در پایتون، برای نگهداری دادهها استفاده میشن. مثلاً میتونیم یک متغیر به نام age
بسازیم و سن یک شخص رو توش ذخیره کنیم.
وقتی یک متغیر رو تعریف میکنیم، به واقع یک قسمت از حافظه رو براش اختصاص میدیم. اینجوری میتونیم به مقدار داخلش دسترسی داشته باشیم و اون رو تغییر بدیم. مثلاً میتونیم سن رو از ۲۵ به ۳۰ سال تغییر بدیم.
اما وقتی که دیگه به اون متغیر نیاز نداریم، چه اتفاقی میافته؟ پایتون، به طور خودکار اون قسمت از حافظه که به اون متغیر اختصاص داده شده رو آزاد میکنه. به این کار “آزادسازی حافظه” یا “اعتبار سنجی” میگن. یعنی میتونیم جای خالی اون قسمت حافظه رو برای استفادهی بعدی بگذاریم.
حالا فکر کن چه خوبه که نگرانی در مورد آزادسازی حافظه نداشته باشیم. پایتون به طور خودکار مدیریت حافظه رو برامون انجام میده. این یعنی ما نمیتونیم به طور غیرمستقیم به حافظه دسترسی داشته باشیم و بیخیال آزادسازی حافظه باشیم.
خلاصه این که پایتون وقتی که دیگه نیازی به یک متغیر نداره، به خودش میگه “حافظه رو آزاد کن!” و ما نگرانی در مورد اینکه باید دستی حافظه رو آزاد کنیم نداریم. پس الان میتونی با آسودگی از متغیرهات استفاده کنی و به آزادسازی حافظه فکر نکنی! همه چیز رو به پایتون بسپر و از بقیه کارها لذت ببر!
تفاوت متغیرها و ثابتها در پایتون و استفاده از آنها
فرض کن که تو یک برنامهنویس پایتون خلاق و خوشحال هستی و داری به عنوان یک برنامهنویس شروع میکنی و باید یک سری اطلاعات شخصی رو در برنامهای ذخیره کنی. اینجاست که متغیرها به کمکت میان.
تصور کن که متغیرها مثل قفسههای کوچیکی هستند که در حافظهی کامپیوتر قرار میگیرند. هر قفسه میتواند یک نوع از اطلاعات را نگهداری کند، مثلاً قفسهای برای نام و قفسهای دیگر برای سن.
حالا وقتی نیاز به ذخیره یک اطلاعات جدید داری، میتوانی یک قفسه تازه بسازی و مقدار مورد نظرت را در آن قرار دهی. برای مثال، میتوانی یک متغیر به نام age
بسازی و سن خودت را در این قفسه ذخیره کنی.
ولی ثابتها، مثل اطلاعاتی هستن که دیگر نمیخوای تغییر کنن. ثابتها مثل قفسه ای از کتاب هستن که بعد از پر کردن، دیگر نمیتونی اونا رو تغییر بدی.
برای مثال، اگر میخواهی مقدار ثابتی برای عدد پی تعریف کنی، میتوانی یک ثابت به اسم PI
بسازی و به آن مقدار 3.14
را اختصاص بدی. حالا هر موقع که نیاز به استفاده از مقدار PI
در برنامه داشتی، میتوانی به این ثابت مراجعه کنی و از اون استفاده کنی.
به عنوان مثال میخوایم با استفاده از ثابت عدد پی که تعریف کردیم مساحت دایره رو محاسبه کنیم:
# 3.14 و مقدار PI تعریف ثابت با نام PI = 3.14 # دریافت شعاع از کاربر radius = float(input("لطفا شعاع دایره را وارد کنید: ")) # PI محاسبه مساحت دایره با استفاده از ثابت area = PI * (radius ** 2) # نمایش مساحت دایره print("مساحت دایره:", area)
متغیرهای از پیشتعریف شده در پایتون و کاربردهای آنها
در پایتون، متغیرهای از پیش تعریف شده، متغیرهایین که قبلاً توسط زبان پایتون تعریف شدن و مقدار اولیهای به صورت پیش فرض به اونا اختصاص داده شده. این متغیرها تو ماژولهای استاندارد خود پایتون موجودن و برای استفاده تو برنامههای پایتون ما نیازی به تعریف مجدد اونا نداریم.
-
None
این متغیر مثل یک جعبه خالیه که هیچ چیزی توش نیست. مثلاً فکرشو بکن که جعبهای داری که خالیه، هیچ چیزی توش نیست. متغیر None
هم میگه هیچ مقداری ندارم.
-
True و False
اینا مثل علامت چکه که میگن “بله، درسته” و “نه، غلطه”. مثلاً فکرشو بکن که یه چک داری که میتونی روش چیزها رو علامت بزنی که درست هستن یا غلط.
-
Ellipsis
این مثل اون سه نقطههاست که میخوان بگن “اینجا جا خالی دارم، چیزی که نمیدونم چیه”. مثلاً فکرشو بکن که تو یه راهنمایی نقشهای داری و توش بهت نقاط مهم رو نشون میدن. ولی یه جاهایی سه نقطهها رو گذاشتن که بگن “اینجا جا خالیه، چیزی که نمیدونم چیه”.
-
__name__
این مثل یه برچسب که روی خودت میچسبونی و نشون میده که تو کد از کجا اومدی. مثلاً فکرشو بکن که تو یه تیم ورزشی باشی و همه بازیکنا یه پیراهن با نام خودشون دارن. وقتی تو هم وارد میشی، پیراهنت یه برچسب داره که نشون میده تو کد از کجا اومدی.
اینا تنها چند مثال از متغیرهای پیشتعریف شده در پایتون هستن و میتونی با استفاده از این متغیرها به راحتی و با جذابیت بیشتری کدت رو بنویسی.
استفاده از متغیرهای خارجی در پایتون
با استفاده از متغییرها در پایتون، شما میتونید از متغیرهای خارجی یا متغیرهایی که تو بخشی از یه کد دیگر تعریف شده، استفاده کنید. برای دسترسی و تغییر مقادیر متغیرهای خارجی، مراحل زیر رو باید دنبال کنیم:
-
تعریف متغیرهای خارجی
قبل از استفاده از متغیرهای خارجی، باید اونا رو تو بخش دیگهای از کد تعریف کنی. مثلاً میگی “اینا متغیرهام هستن” و یه مقدار بهشون میدی.
# تعریف متغیر x = 10
-
دسترسی به مقدار متغیر:
برای دسترسی به مقدار متغیر خارجی، میتونی از اسمش استفاده کنی. مثلاً میگی “بگو مقدار متغیر x چیه!” و اون مقدار رو چاپ میکنی.
# تو این بخش مقدار متغییری که توی بخش دیگری تعریف شده چاپ میشه print(x)
-
تغییر مقدار متغیر
برای تغییر مقدار متغیر خارجی، میتونی به اسمش دسترسی پیدا کنی و یه مقدار جدید بهش بدی. مثلاً میگی “حالا مقدار x رو به 20 تغییر بده!” و اون مقدار x رو تغییر میدی.
# که در بخشی دیگر تعریف شده، به 20 تغییر میکنه x مقدار x = 20
با این روشها، میتونی به متغیرهای خارجی در پایتون دسترسی پیدا کنی و مقادیرشون رو تغییر بدی. البته حواست باشه که با دقت ازشون استفاده کنی و مقادیرشون رو به درستی تغییر بدی تا کدت خوانا و قابل نگهداری باشه.
چگونه در پایتون حرفهای تر شویم؟
در نهایت استفاده از متغیرها تو پایتون بهت اجازه میده که برنامههایی بسازی که به تغییرات در ورودیها و شرایط مختلف پاسخ بدن. میتونن تو حل مسائل ریاضی، مدیریت دادهها و کنترل جریان اجرا کمکت کنن. این باعث میشه کدت خواناتر، قابل نگهداری و قابل توسعه باشه. در نتیجه، استفاده از متغیرها در پایتون بهت امکان میده که برنامههای پویا و قابل تنظیم بسازی و با دادهها به صورت جذاب و انعطافپذیر کار کنی.
با خواندن مقالات مختلف احتمالا بتوانید تا حدی به بخشهای مختلف پایتون مسلط شوید اما قطعا بیبرنامه بودن و اصولی نبودن مسیر یادگیری باعث میشود شما نسبت به زبان برنامه نویسی پایتون دلسرد شوید یا اینکه آن را بصورت کامل یاد نگیرید؛ اما نگران این موضوع نباشید، تیم سبزلرن برای شما آموزش صفر تا صد پایتون را بصورت کاملا رایگان قرار داده تا بتوانید بهصورت اصولی و حرفهای در زبان پایتون متخصص شوید. اما این همه ماجرا نیست!! این دوره علاوه بر رایگان بودن آن، دارای پشتیبانی انلاین نیز هست و هرکجا به هر مشکلی برخوردید، افراد متخصص در این زبان آماده پاسخگویی به اشکالات و سوالات شما هستند، چی بهتر از این؟ پس فرصت را غنیمت بشمرید و همین الان در این دوره شرکت کنید و بصورت تخصصی یادگیری خودتان را شروع کنید.
مقاله مختصر و کاملی بود. تمام مطالب یکجا گفته شدن. من کتابای زیادی راجب پایتون خوندم و میتونم بگم که هیچکدومشون اینقدر کامل مباحث رو توضیح ندادن و ناقص بودن.🩵
مقاله راجبه متغیر ها خیلی کامل و جامع بود دقیقا هر ان چه که راجبه متغییر ها باید بدونیم را
در بر میگرفت
من خودم تا چند روز طول کشید تا این مطالب رو از اینترنت و پراکنده یاد گرفتم
اما اینجا همه مطالب یکجا و به ترتیب گفته شده و خیلی مفیده کسی که تازه میخواد یه زبان
برنامه نویسی رو شروع کنه
سپاس
🙏❤️