<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
    <channel>
        <title>پست‌های انتشارات آموزش پایتون به زبان ساده</title>
        <link>https://virgool.io/python-learning/feed</link>
        <description>آموزش برنامه‌نویسی پایتون به زبان ساده</description>
        <language>fa</language>
        <pubDate>2026-06-10 20:10:17</pubDate>
        <image>
            <url>https://files.virgool.io/upload/publication/9pdq5agswjep/rxhzje.png</url>
            <title>آموزش پایتون به زبان ساده</title>
            <link>https://virgool.io/python-learning</link>
        </image>

                    <item>
                <title>آموزش پایتون به زبان ساده: توابع</title>
                <link>https://virgool.io/python-learning/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D9%BE%D8%A7%DB%8C%D8%AA%D9%88%D9%86-%D8%A8%D9%87-%D8%B2%D8%A8%D8%A7%D9%86-%D8%B3%D8%A7%D8%AF%D9%87-%D8%AA%D9%88%D8%A7%D8%A8%D8%B9-ycdlogwbafdu</link>
                <description>تا به اینجای کار ما برنامه‌های مختلفی نوشتیم و با ابزارهای متنوعی آشنا شدیم. در این قسمت قصد داریم تا یه خورده برنامه‌هامون رو مرتب‌تر کنیم و دسترسی به اونا رو راحت‌تر کنیم. تصور کنید که چند خط کد رو نوشتین که برای انجام یه عملیات به کار میره. و ما قصد داریم که توی برنامه‌مون چندین بار از اون استفاده کنیم. اولین راهی که به ذهنمون میرسه اینه که اون کدها رو کپی پیست کنیم. اما اینکار جالبی نیستش. اینجا بود که ایده‌ی استفاده از توابع مطرح شد.توابع در واقع تکه کدهایی هستند که برای انجام یه سری وظایفی نوشته میشن و با یه نام مشخصی میشه به اونا دسترسی داشت.مزایای توابعاستفاده از توابع خیلی مزیت‌‌های زیادی داره. در واقع برنامه‌نویسی بدون استفاده از توابع یه چیز نامرتبی از آب در میاد.به کمک توابع دیگه مجبور نیستیم که کدهای خودمون رو در قسمت‌های مختلف کد، کپی پیست کنیم. تنها یه بار برای بار اول تعریف می‌کنیم و در برنامه‌ی اصلی تنها با اشاره به نام اون تابع، اونو فراخوانی و اجرا می‌کنیم.توابع می‌تونن یه سری ورودی‌هایی رو بگیرن و در پایان یه سری خروجی‌هایی رو برامون برگردوننند.تعریف یک تابعدر تعریف توابع باید یه سری نکات از جمله عبارات کلیدی و نام‌گذاری‌ها رعایت بشه. در ادامه به کمک یه مثال با نحوه‌ی تعریف توابع آشنا میشیم:def greet_user():
    print(‘Hello!’)توضیح:در تعریف توابع ابتدا کلمه کلیدی def رو می‌نویسیم.بعد از اون نام تابع رو می‌نویسیم که در این مثال greet_user رو قرار دادیم.بعد از نام تابع باید کاراکترهای () رو حتما قرار بدیم. در این مثال داخل کاراکترها چیزی نیومده. اما در ادامه قراره که آرگومان‌هایی رو برای توابع تعریف کنیم که داخل این پرانتزها میان.بعد از اون کاراکتر : نوشته میشه.در خط‌های بعد، کد مربوط به اون تابع که در واقع بخش بدنه تابع محسوب میشن، به اندازه ۴ فاصله یا یک تب نسبت به تابع در خط جدید شروع میشن.تو این مثال تابع ما تنها کارش، اجرای تابع print هستش.فراخوانی و اجرای تابعتا اینجا ما تنها یه تابع رو تعریف کردیم. اما این لزوما به این معنا نیست که باید حتما اجرا بشه. تا زمانی که ما اونو فراخوانی نکردیم، این تابع اجرا نمیشه. برای فراخوانی تابع فقط کافیه که اسم اونو به همراه () بنویسیم. مثال زیر:def greet_user():
    print(‘Hello!’)greet_user()ارسال اطلاعات به تابعتا اینجا ما یه تابع خیلی ساده رو تعریف کردیم که تنها یه پیام ثابتی رو برامون چاپ می‌کرد. این تابع در واقع با محیط بیرون ارتباطی نداشت و نمی‌تونستیم براش داده‌ای رو بفرستیم.برای مثال فرض کنید که ما قصد داریم همین تابع رو بازنویسی کنیم به نحوی که پیام hello به همراه اسمی که براش می‌فرستیم نشون داده بشه. در اینجا باید یه آرگومان برای تابع تعریف کنیم و در هنگام فراخوانی تابع، پارامتر مورد نظر خودمون رو هم ذکر کنیم. در ادامه با یه مثال اینو توضیح میدم:def greet_user(name):
    print(f’Hello {name}’)greet_user(‘ali‘)
greet_user(‘hossein‘)توضیح:اگه دقت کنید همون تابع بالایی رو با یه سری تغییرات کوچک بازنویسی کردیم.در بخش تعریف تابع، داخل () ها متغیری با نام name نوشتیم که در واقع این متغیر، آرگومان این تابع هستش.در بدنه تابع از تابع f-string استفاده کردیم که یه رشته‌ای رو که شامل hello و اون مقدار name هستش رو برمی‌گردونه.تو بخش بدنه تابع، ما هیچ اطلاعی از مقدار name نداریم و یه مقدار متغیر هستش که هنگام فراخوانی تابع مقداردهی میشه.در ادامه ما دو بار این تابع رو فراخوانی کردیم یا اصطلاحا صدا زدیم.یه بار رشته‌ی ali رو به عنوان آرگومان فرستادیم، یه بار هم رشته hossein رو.چند نکته در استفاده از آرگومان‌هاما در استفاده از آرگومان‌ها تنها به یه مورد محدود نیستیم و می‌تونیم چندین آرگومان تعریف کنیم. بدین صورت که باید با کاراکتر , از هم‌دیگه جدا بشن.آرگومان‌های ما می‌تونن از هر نوعی باشن. مثل رشته، عدد، لیست، دیکشنری و…در استفاده از آرگومان‌ها ترتیب اهمیت زیادی داره و باید هنگام تعریف توابع و فراخوانی اونا به ترتیب آرگومان‌ها دقت کنید.آرگومان‌های کلیدیگاهی اوقات ما از ترتیب آرگومان‌های یه تابع اطمینان نداریم. در اینجا با استفاده از آرگومان‌های کلیدی می‌تونیم تابع موردنظر رو فراخوانی کنیم. فقط باید نام متغیری که در بخش تعریف تابع اومده رو به یاد داشته باشیم. طبیعتا در اینجا ترتیب مهم نیس. با یه مثال با چگونگی استفاده از اون آشنا میشیم.def greet_user(f_name, l_name):
    print(f’Hello {f_name} {l_name}’)greet_user(l_name=’ahmadi’, f_name =’ali’)توضیح:اگه دقت کنید، در بخش تعریف تابع در ابتدا متغیر f_name یا نام خانوادگی اومده و بعد از اون l_name.اما در زمان فراخوانی تابع این ترتیب آرگومان‌ها رعایت نشده و در عوض مقادیر رو بر اساس نام متغیرهای تعریف شده در قسمت تعریف تابع نسبت دادیم.مقادیر پیش فرضنکته‌ی مهمی که در استفاده از توابع وجود داره اینه که اگه تابعی دارای پارامتر بود، ما باید هنگام فراخوانی تابع اون مقادیر رو حتما به عنوان آرگومان ذکر کنیم. چون اگه اینکار رو انجام ندیم برنامه‌ی ما با خطا مواجه میشه.خب طبیعیه. چون مقادیری به آرگومان انتساب ندادیم. تو این مواقع می‌تونیم مقادیر پیش‌فرضی رو به پارامترهای خودمون نسبت بدیم. یعنی اگه هنگام فراخوانی تابع، مقداری به آرگومان‌ انتساب داده شده بود که همون مقدار رو در نظر میگیره و اگه هم آرگومانی در نظر گرفته نشده باشه، مقدار پیش‌فرض رو در نظر میگیره. در این حالت برنامه هم دچار خطا نمیشه. با یه مثال این مورد رو توضیح میدم:def greet_user(f_name, l_name=‘unknown’):
    print(f’Hello {f_name} {l_name}’)greet_user(‘ali’,’ahmadi’)
greet_user(‘ali’)توضیح:در این مثال ما یه تابع داریم که دو تا پارامتر داره که پارامتر دومی دارای مقدار پیش‌فرض unknown هستش.ادامه‌ی تابع هم مشابه مثال‌های قبل هستش.در ادامه ما دوبار تابع رو فراخوانی کردیم.در دفعه‌ی اول هر دو تا آرگومان رو برای تابع فرستادیم و خب نتیجه‌ای هم که بدست میاریم، مشخصه و هر دو تا رو نشون میده.اما در دفعه‌ی دوم تنها آرگومان اول یعنی f_name رو وارد کردیم و مقداری برای آرگومان دوم در نظر نگرفتیم. اگه خروجی رو دقت کنید، مقدار l_name رو برابر مقدار پیش‌فرض unknown در نظر گرفته و اونو چاپ کرده.اگه دقت کرده باشین، تو این حالت دیگه خطایی نداریم. چون حداقل یه مقدار پیش‌فرضی برای آرگومان موردنظرمون در نظر گرفته شده.برگرداندن مقادیرتا اینجا ما با توابعی کار کردیم که به اونها یه سری ورودی میدادند و مثلا یه عملیاتی مثل خروجی در صفحه نمایش رو انجام میدادند. اما توابع قابلیت‌های بیشتری هم دارند و اون برگرداندن مقادیر هستش. مثلا فرض کنید ما یه تابعی تعریف می‌کنیم برای محاسبه‌ی محیط یه مستطیل. در ابتدا برای تابع باید ورودی در نظر بگیریم. ورودی‌های ما عبارتنداز : طول (tool) و عرض (arz)ما قراره که یه مقداری رو هم به عنوان خروجی این تابع برگردونیم. بیاین با یه مثال نحوه‌ی برگردوندن مقادیر رو توضیح بدیم:def get_mohit(tool, arz):
    result = (tool + arz) * 2
 return resultmohit = get_mohit(2, 4)
print(mohit)توضیح:در ابتدا ما یه تابع با نام get_mohit تعریف کردیم که دو تا پارامتر یا ورودی داره: طول (tool) و عرض (arz)در بدنه تابع، تو خط اول یه متغیر تعریف کردیم با نام result که قراره حاصل نتیجه‌ی محاسبه فرمول روبرو در اون ذخیره بشه.در خط بعد ما مقدار result رو به عنوان خروجی بر می‌گردونیم که برای اینکار از کلمه کلیدی return استفاده شده.حالا بریم سراغ برنامه‌ی اصلی:در ابتدا ما یه متغیر تعریف کردیم با نام mohit که قراره خروجی تابع get_mohit در اون ریخته بشه.آرگومان‌های ما تو این مثال ۲ و ۴ هستند. در ابتدا این دو مقدار برای تابع موردنظر فرستاده میشن. بعد از اون تابع عملیات محاسباتی رو انجام میده و در نهایت خروجی رو برمی‌گردونه و به متغیر مورد نظر تو بخش فراخوانی که در اینجا mohit هستش انتساب میده.و در نهایت هم مقدار متغیر mohit توی صفحه چاپ میشه.ذخیره توابع در ماژول‌هاتصور کنید که کد شما شامل چندین تابع هستش. در حالت عادی ما میایم و همه‌ی اونا رو توی یه فایل می‌نویسیم. اما گاهی اوقات دنبال کردن این حجم از کد کار دشواری میشه. به ویژه برای کارهای تیمی که هر کسی یه بخش خاصی رو دنبال می‌کنه. در این مواقع بهتره که برخی از توابع‌مون رو که با همدیگه ارتباط دارند توی فایل‌های جداگانه‌ای بنویسیم و هر وقت نیاز شد در فایل اصلی به اونا دسترسی پیدا کنیم و اونا رو اجرا کنیم. به این فایل‌های جداگانه که توابع ما توی اونا ذخیره میشن اصطلاحا ماژول (‌module) میگن.برای دسترسی به توابعی که در ماژول‌ها مختلفی ذخیره شدند کافیه که در کدمون اونا رو import کنیم.استفاده‌ از ماژول‌ها مزایای مختلفی داره. مثلا:جزییات بخش‌هایی از کد که لازم نیست از دید ما پنهان میشه و لازم نیست که اونا رو دنبال کنیم.کد ما جمع و جورتر میشه و منظم‌تر میشه.خب اجازه بدین در ادامه با چند مثال با نحوه‌ی کار با اونا آشنا بشیم.ابتدا یه فایل جدید ایجاد کنید و کدهای زیر رو در اون بنویسید و با نام hello.py ذخیره کنید.def greet_user():
    print(‘Hello how are you?’)حالا در کنار این فایلی که ایجاد کردین، یه فایل جدید دیگه بنویسین کدهای زیر رو در اون وارد کنید:import hellohello.greet_user()توضیح:در ابتدا ما یه فایل به نام hello.py ساختیم و داخلش یه تابع تعریف کردیم.سپس یه فایل کنار اون فایل ایجاد کردیم و کدهای بالا رو نوشتیم که در ادامه قصد دارم اونو توضیح بدم:در ابتدا کلمه کلیدی import رو می‌نویسیم و بعد از اون نام module یا همون فایلی که توابع ما داخلش ذخیره شده‌اند رو می‌نویسیم.در ادامه برای فراخوانی تابع موجود در ماژول موردنظر کافیه که ابتدا اسم اون ماژول و بعد کاراکتر . و بعد نام تابع رو بنویسیم.به عبارتی سینتکس کلی فراخوانی تابع از یه ماژول به این صورته:module_name.function_name()ایمپورت کردن توابع خاصدر حالت قبل برنامه میاد در ابتدا کل توابع و محتویات موجود در اون ماژول رو کپی می‌کنه و بعد از اون استفاده می‌کنه. اما گاهی اوقات لازم نیس که تمام محتویات یه ماژول رو لود کنیم و تنها به یه توابع خاصی نیاز داریم. در این حالت می‌تونیم به کمک سینتکس زیر توابع موردنظرمون از ماژول مرتبط رو لود کنیم و از اون استفاده کنیم.from module_name import function_nameسینتکس import کردن توابع خاص از یه ماژول به صورت بالاست. که البته می‌تونید بیش از یک تابع هم import کنید. فقط کافیه که با کاراکتر , اونا رو از همدیگه جدا کنید. در ادامه با یه مثال بهتره که با چگونگی استفاده از اونا آشنا بشیم.from hello import greet_usergreet_user()توضیح:اگه دقت کنید تو این حالت دیگه لازم نیست که برای فراخوانی تابع موردنظر، اسم ماژول رو هم در ابتدا ذکر کنید و فقط کافیه که نام تابع رو صدا بزنید.اختصاص نام مستعار به توابع و ماژول‌ها به کمک asگاهی اوقات اسم توابع موردنظر ما خیلی طولانی‌اند یا اینکه نام اون توابع با نام یه تابع موجود در فایل اصلی یکسان هستند و اینجاست که ممکنه برامون یه خورده دردسر ایجاد کنه. اینجا بهتره که از نام مستعار استفاده کنیم. ما با استفاده از کلمه کلیدی as می‌تونیم اسامی کوچک‌تری رو برای توابع‌مون تعریف کنیم و در طول برنامه از اونها استفاده کنیم. سینتکس استفاده از اونا به شکل زیر هستش:from module_name import function_name as fnهمچنین ما می‌تونیم برای ماژول‌ها هم یه نام مستعار در نظر بگیریم. سینتکس استفاده از اون در ادامه اومده:import module_name as mnایمپورت کردن تمام توابع یک ماژولدیدیم که با استفاده از سینتکس قبل می‌تونیم توابع خاصی از یه ماژول رو لود کنیم و یه خوبی‌ای هم که نسبت به حالت قبل داشت اینه که برای فراخوانی تابع موردنظر، لازم نیست که نام ماژول هم در ابتدای اون بیاد. اما گاهی اوقات ما قصد داریم که به کمک این سینتکس تمام توابع ماژول موردنظر رو import کنیم. در این حالت کافیه که به جای نام توابع فقط کاراکتر * رو بنویسیم. یعنی به صورت زیر:from module_name import *جمع‌بندیتو این قسمت با توابع آشنا شدیم و با دونستن اونا می‌تونیم کدهای تمیزتری و دسته‌بندی شده بهتری رو بنویسیم. در واقع ما توابع رو کافیه یه بار تعریف کنیم و کدهایی که یه وظیفه خاصی انجام میدن رو به عنوان بدنه تابع بنویسیم و در برنامه اصلی‌مون، هر وقت نیاز شد کافیه که اونا رو فراخوانی کنیم و با ارسال ورودی‌های مختلف،‌ نتایج و خروجی‌های متناسبی رو دریافت کنیم.این قسمت هم به پایان رسید. امیدوارم از مطالبی که تو این مقاله نوشته شده بود لذت برده باشین.منبع: آموزش پایتون به زبان ساده: توابع - وبسایت شخصی محمدحسین میثاق‌پور</description>
                <category>آموزش پایتون به زبان ساده</category>
                <author>محمدحسین میثاق‌پور</author>
                <pubDate>Fri, 10 Apr 2020 21:42:35 +0430</pubDate>
            </item>
                    <item>
                <title>آموزش پایتون به زبان ساده: ورودی و حلقه‌ی while</title>
                <link>https://virgool.io/python-learning/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D9%BE%D8%A7%DB%8C%D8%AA%D9%88%D9%86-%D8%A8%D9%87-%D8%B2%D8%A8%D8%A7%D9%86-%D8%B3%D8%A7%D8%AF%D9%87-%D9%88%D8%B1%D9%88%D8%AF%DB%8C-%D9%88-%D8%AD%D9%84%D9%82%D9%87%DB%8C-while-jkwszphqlmxt</link>
                <description>سلام خدمت کاربران عزیز.امیدوارم که این سلسله مقالات آموزشی پایتون تا اینجا براتون مفید بوده باشه.در این آموزش قصد داریم تا با کاربر تعامل داشته باشیم. در واقع ما میخوایم یه سری ورودی از کاربر بگیریم و عملیات مختلفی روی اونا انجام بدیم. مثلا از ساده‌ترینش که یه متنی رو از طریق ورودی کاربر میگیریم و همونو نشون میدیم، تا برنامه‌های پیچیده تر دیگه. با ما همراه باشین.معرفی تابع inputبرنامه‌هایی که ما تا الان داشتیم، فقط یه سری کارای ثابتی انجام میدادند و با کاربر تعامل نداشتند. با استفاده از تابع input می‌تونیم یه سری ورودی به کدمون بدیم و بلاهای مختلفی سرشون بیاریم! مثلا مقدارشون رو ذخیره کنیم. شرایط مختلف رو بررسی کنیم و کلی کار دیگه. اجازه بدین تا با یه مثال این تابع رو معرفی کنم.message = input(“Enter Your Name: “)print(message)توضیح:نحوه‌ی کار با تابع input به اینصورت هستش که:ما در ابتدا باید یه متغیر در نظر بگیریم، برای مثال متغیر messageبعد از اون تابع input رو با همون فرمتی که توی مثال بالا اومده می‌نویسیم.برای اینکه مشخص باشه که قراره چه چیزی رو از کاربر دریافت کنیم باید یه پیامی توی خروجی نشون داده بشه، که توی مثال بالا از کاربر میخوایم که نام خودش رو وارد کنه.با اجرای برنامه و رسیدن به خطی که تابع input در اون قراره داره، برنامه مکث می‌کنه و منتظر میمونه که ما یه متنی رو از طریق کیبورد وارد کنیم و تا زمانی که Enter رو نزنیم، برنامه ادامه نمیده.بعد از اون ورودی که ما از طریق کیبورد وارد کردیم داخل متغیری که براش در نظر گرفتیم، ذخیره میشه.و بعد از اون میتونیم هر بلایی سر این متغیر بیاریم. مثلا تو این مثال ما اونو چاپ کردیم :)تبدیل به عدد با استفاده از تابع intگاهی اوقات ما قصد داریم که ورودی‌های عددی از کاربر بگیریم و با اونا کار کنیم. مثلا یه سری عملیات محاسباتی روی اونا انجام بدیم. نکته‌ای که درباره استفاده از تابع input وجود داره اینه که: متغیرهایی که ذخیره میشن از نوع رشته هستند و اگه بخوایم مثل یه عدد باهاشون رفتار کنیم باید نوع‌شون رو تبدیل به عدد کنیم. با استفاده از تابع int می‌تونیم رشته‌ها رو تبدیل به عدد کنیم. با یه مثال با نحوه‌ی کار با اون آشنا میشیم.age = input(‘How old Are You: ‘)
age = int(age)
if age &gt;= 18:
    print(‘OK’)
else:
    print(‘No’)آشنایی با حلقه‌های whileاگه یادتون باشه ما با حلقه‌ها آشنا شدیم و حلقه‌ی for رو با هم دیگه کار کردیم. حلقه‌های for اغلب برای پیمایش تو لیست‌ها و دیکنشری‌ها به کار میرن. توی این مقاله قصد داریم که حلقه‌های while رو معرفی کنیم.حلقه‌های while معمولا زمانهایی به کار میرن که ما قصد داریم به ازای برقرار بودن یه شرطی، اون تکه از کد ما مدام تکرار بشه. در ادامه قصد دارم تا با کمک یه مثال ساده با نحوه‌ی کار با حلقه‌ی while آشنا بشیم.number = 1while number &lt;= 5:
    print(number)
    number += 1توضیح:در ابتدا ما یه متغیر تعریف کردیم و مقدار ۱ رو بهش انتساب دادیم.بعد از اون دستور while مون رو نوشتیم که نحوه‌ی کار با اون به این صورته:ابتدا کلمه‌ی کلیدی while رو می‌نویسیم.بعد از اون باید یه عبارت شرطی بنویسیم. این عبارات شرطی همونایی هستند که توی if ها هم ازشون استفاده می‌کردیم.بعد از اون کاراکتر‌ : میاد. وجود این کاراکتر الزامیه.در خط‌های بعدی، کدهایی که قصد داریم تکرار بشن رو به اندازه ۴ فاصله یا تب نسبت به while می‌نویسیم.مراقب این چاه باشید!یه نکته‌ی خیلی خیلی مهم در استفاده از حلقه‌ی while وجود داره و اون اینه که حواسمون باشه که یه وقت حلقه‌های ما بی‌نهایت نباشن. یعنی حلقه‌های ما باید محدود بشن و مثلا یه شرطی وجود داشته که به ادامه‌ی اون حلقه پایان بده وگرنه برنامه‌ی ما تا ابد میوفته داخل یه حلقه و تموم هم نمیشه!برای اینکه این موضوع رو متوجه بشین. مثال قبلی رو بدون خط افزایش number بازنویسی کنید و اجرا کنید. یعنی مثال زیر:number =1while number &lt;= 5:
    print(number)اگه کدتون رو اجرا کنید، ناگهان متوجه میشین که توی خروجی به طور رگباری داره دنباله‌ای از یک‌ها پشت‌سر هم چاپ میشه و هیچ وقت تموم هم نمیشه!در چنین مواقعی توصیه می‌کنم که ابتدا خونسردی خودتون رو حفظ کنید و نفس عمیق بکشید.بعد بعد با بستن محیط پایتون شل یا میانبر ctrl + c این روند رو متوقف کنید.بعد از اون باید برین، کد رو اشکال یابی کنید و حلقه‌تون رو از حالت نامحدود خارج کنید.ترکیب تابع input و حلقه whileخب در ابتدا تابع input رو معرفی کردیم و با اون کار کردیم. اگه دقت کنید، برنامه‌ی ما تنها یک بار اجرا شد. اما بیاین تصور کنید که ما قراره چند تا ورودی رو به صورت پشت سر هم دریافت کنیم. در واقع قراره که یه کار تکراری انجام بدیم. اینجاست که باید دست به دامن حلقه while بشیم! یعنی چه جوری؟ آیا تا ابد حلقه باید تکرار باشه؟ اگه اینجوری باشه که یه حلقه بی‌نهایت داریم.نگران نباشین. ما می‌تونیم مثلا یه شرط پایان حلقه تعریف کنیم؛ اگه ورودی کاربر مثلا exit بود. از حلقه بیاد بیرون و ادامه برنامه رو دنبال کنه. به مثال زیر دقت کنید:message = “”
while message != ‘exit’:
    message = input(‘Enter Your Message: ‘)
    print(message)توضیح:در ابتدا یه متغیر با نام message تعریف کردیم و مقدار تهی رو بهش انتساب دادیم.در مرحله‌ی بعد قراره وارد حلقه‌ی while بشیم، که اول باید شرط موردنظر چک بشه. آیا مقدار message برابر exit نیست؟ اگه برابر نیست، خب شرطمون درسته، پس می‌تونه وارد حلقه بشه.در حلقه‌ی ما دو خط کد وجود داره که هربار تکرار میشه.ابتدا میاد یه ورودی از کاربر میگیره و اونو تو متغیر message ذخیره میکنه.بعد از اون هم میاد و پیامی که از کاربر گرفته رو نشون میده.تا مادامی که ورودی ما برابر exit نباشه، حلقه‌ی ما تکرار میشه.استفاده از break برای خروج از حلقههمون‌طور که گفتیم، برای کار با حلقه‌ها حتما باید یه راه فراری در نظر بگیریم، وگرنه میفتیم توی یه حلقه بی‌نهایت که تموم هم نمیشه. در اینجا میخوام یه روش دیگه رو بگم. اجازه بدین مثال بالا رو با این روش بازنویسی کنم:while True:
    message = input(‘Enter Your Message: ‘)
    if message == ‘exit’:
 break
    else:
        print(message)توضیح:همون‌طور که کد رو می‌بینید، از همون ابتدا شیرجه می‌زنیم توی یه حلقه، بدون هیچ شرطی! یعنی Trueدر ابتدا یه پیام رو از کاربر میگیریم.در خط بعد یه شرط if داریم؛ اگه این ورودی برابر exit بود، با استفاده از دستور break حلقه رو می‌شکنه و از اون خارج میشه.در غیر این‌صورت رشته‌ای که از کاربر گرفتیم رو چاپ می‌کنه. به همین راحتی.به طور کلی نحوه‌ی استفاده از دستور break در حلقه while به این صورته که ما حلقه خودمون رو با شرط True مینویسیم.و بعد داخل یه سری شرط‌هایی، دستور break رو برای خروج از حلقه قرار میدیم.استفاده از continue در حلقه whileگاهی مواقع لازمه که ما تمام خط‌های یه حلقه رو اجرا نکنیم و اونا رو نادیده بگیریم. مثلا به محض برقرار بودن یه شرط داخل حلقه، تصمیم می‌گیریم که ادامه کد‌های اون حلقه رو اجرا نکنیم و دوباره از ابتدای حلقه شروع کنیم به اجرا. در اینجا هستش که از عبارت کلیدی continue استفاده می‌کنیم. اجازه بدین تا با یه مثال با چگونگی استفاده از این عبارت آشنا بشیم:number = 0
while number &lt; 10:
    number += 1
    if number % 2 == 0:
        continueprint(number)توضیح:در ابتدا ما یه متغیر با مقدار ۰ تعریف کردیم.در مرحله‌ی بعد ما داخل هر حلقه میریم.هر بار مقدار اون متغیر یکی یکی زیاد میشه.در هر بار چک می‌کنه اگه اون عدد زوج بود، دیگه ادامه حلقه رو اجرا نکنه. یعنی برنامه‌ی تو این خط مستقیما می‌پره به ابتدای حلقه و تابع print رو هم اجرا نمی‌کنه.در واقع در خروجی اعداد فرد از ۱ تا ۹ نشون داده میشن.خب این قسمت هم به خوبی و خوشی تموم شد! امیدوارم که مطالب جدیدی یاد گرفته باشین و بتونید برنامه‌های قدرتمندتری رو بنویسید.منبع: آموزش پایتون به زبان ساده: ورودی و حلقه‌ی while - وبسایت شخصی محمدحسین میثاق‌پور</description>
                <category>آموزش پایتون به زبان ساده</category>
                <author>محمدحسین میثاق‌پور</author>
                <pubDate>Fri, 10 Apr 2020 21:04:08 +0430</pubDate>
            </item>
                    <item>
                <title>آموزش پایتون به زبان ساده: عبارات شرطی</title>
                <link>https://virgool.io/python-learning/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D9%BE%D8%A7%DB%8C%D8%AA%D9%88%D9%86-%D8%A8%D9%87-%D8%B2%D8%A8%D8%A7%D9%86-%D8%B3%D8%A7%D8%AF%D9%87-%D8%B9%D8%A8%D8%A7%D8%B1%D8%A7%D8%AA-%D8%B4%D8%B1%D8%B7%DB%8C-xq9qubg0pelm</link>
                <description>امروز قصد دارم تا یه قابلیتی رو بهتون یاد بدم که برنامه‌های خودمون رو از یکنواختی و ثابت بودن در بیاریم. اگه دقت کرده باشین، ما تا به حال کدهایی رو نوشتیم که تقریبا خروجی ثابتی داشتند و از ابتدای کد تا انتهای کد، خط به خط اجرا میشدن. گاهی مواقع ما قصد داریم که به ازای برقرار بودن یه سری شرایط بخشی از کدها اجرا بشن. یا به عبارتی اگه شرط مورد نظرمون برقرار نبود، اون تکه از کدها اجرا نشن. در اینجا هستش که باید از عبارات شرطی یا if استفاده کنیم. در زبان پایتون انواع مختلفی برای تعریف if وجود داره. از ساده گرفته تا پیچیده که در این مقاله قصد داریم اونا رو بررسی کنیم.قبل از پرداختن به سینتکس شرط‌ها اجازه بدین تا یه سری مطالب پایه‌ای رو بررسی کنیم. همون‌طور که می‌دونید شرط‌های به طور کلی دو حالت دارند: درست یا غلط. که توی زبان انگلیسی یا به طور ویژه در زبان‌های برنامه‌نویسی بهشون میگن: True (درست) و False (غلط).ابتدا بیاین برای دستگرمی یه سری شرط‌ها رو بررسی کنیم و خروجی اونا رو ببینیم تا بیشتر با عبارات منطقی آشنا بشیم.همون‌طور که قبلا هم گفتم، از محیط Python Shell فقط برای نمایش خروجی نیستش و شما می‌تونید مثل یه ماشین‌حساب ازش استفاده کنید. یعنی کدهاتون رو خط به خط وارد کنید و خروجی رو ببینید. البته بعضی از کدهایی که خط به خط توی این محیط وارد میشن رو شما نمی‌تونید تو محیط ویرایشگر کد ازش استفاده کنید.خب برای نمونه عبارت زیر رو در پایتون شل خط به خط وارد کنید و نتیجه رو بررسی کنید.بررسی تساوی دو متغیر&gt;&gt;&gt; name = ‘ali’
&gt;&gt;&gt; name =‌= ‘ali’اگه این دو تا خط رو به ترتیب در محیط پایتون شل وارد کنید، خروجی True رو نشون میده. حالا بیاین این دو تا خط رو توضیح بدیم.توضیح: در خط اول ما یه دونه = می‌بینیم که این عملگر انتساب هستش. به عبارتی، مقدار ‘ali‘ رو به متغیری با نام name انتساب داده.در خط دوم ما دوتا کاراکتر = می‌بینیم که اینجا به معنی شرط برابر بودن هستش نه انتساب. به عبارتی این خط میگه که آیا مقدار متغیر name با مقدار ‘ali’ برابر هستش یا نه.از اونجایی که این شرط برقراره، خروجی ما درست یا True هستش.حالا بیاین کدهای بالا رو یه بار دیگه بازنویسی کنیم و نتیجه رو ببینیم:&gt;&gt;&gt; name = ‘reza’
&gt;&gt;&gt; name == ‘ali’این بار مقدار خروجی ما غلط یا False هستش چون مقدار ‘reza‘ با ‘ali‘ برابر نیستش.عملگر نامساویتا اینجا عملگر مساوی بودن رو بررسی کردیم. حالا میخوایم برعکس این عملگر رو هم معرفی کنیم: عملگر نامساوی. یعنی چه؟این یعنی اگه مقدار دو تا متغیر ما برابر نبودن اون وقت نتیجه درسته و اگه مقدار دو تا متغیر برابر بودن نتیجه نادرسته. عملگر نامساوی رو با =! نشون میدیم. برای نمونه کدهای زیر رو تو محیط پایتون شل وارد کنید.&gt;&gt;&gt; name = ‘reza’
&gt;&gt;&gt; name != ‘ali’همون مثال قبلی هستش، اما اینبار نتیجه‌ی درستی میده.این دو تا عملگر فقط ویژه رشته‌ها نیستند و برای مثال میشه برای داده‌های عددی هم استفاده کرد.برای مقادیر عددی میشه عملگرهای بیشتری به کار برد. مثل کوچک‌تر، بزرگتر و… که با عملگرهایی مثل &gt; و &lt; و… نشون میدن و باهاشون میشه شرط‌ها رو بررسی کرد.خب. تا اینجا یه آشنایی کلی با نتیجه‌ی عبارات منطقی به دست اوردیم. حالا بریم سراغ تعریف if ها یا شرط‌ها.عبارات شرطی ifعبارات شرطی سادهx = 5
if x &gt; 4 :
 print(‘your number is bigger than 4’)
print(‘finish the code’)توضیح:همونطور که در کد بالا مشاهده می‌کنید، ابتدا ما یه متغیر با مقدار ۵ تعریف کردیم و در خط بعد یه دستور شرطی نوشتیم که با if شروع شده و بعد از اون x &gt; 4 اومده که این به معنای اینه که اگر مقدار x بزرگتر از ۴ بود اون وقت دستورات مرتبط با شرط رو اجرا کن و در غیر اینصورت اونا رو نادیده بگیر.در خط بعد به اندازه ۴ فاصله یا tab فاصله داریم و بعد از اون دستور ما شروع میشه. که در اینجا یه پیام رو نشون میده و بعد از اون هم دستور شرطی ما تموم شده و در خط بعد یه دستور معمولی رو داریم و اگه دقت کنید دیگه نسبت به if تورفتگی و فاصله نداره.به عبارت دیگه اگه دستوراتی در خط‌های بعد به اندازه ۴ فاصله یا تب از if نوشته شده باشند، این به معنای اینه که اون دستورات متعلق به بلوک if هستند و تنها در صورتی اجرا میشن که شرط‌مون درست باشه.حالا ازتون میخوام که این کد رو اجرا کنید و نتیجه رو ببینید.در خروجی متوجه میشین میشین که فقط پیام ‘finish the code’ چاپ شده. به این علت که شرط ما درست نبوده و اون پیام چاپ نشده. حالا برای اینکه با طرز کار شرط‌ها بیشتر آشنا بشین ازتون میخوام که دو تا کار انجام بدین.یک: مقدار x رو تغییر بدن و یه عدد بیشتر از ۴ بذارین.دو: به ابتدای خط آخر برین و یه فاصله tab ایجاد کنید، به گونه‌ای که شروع اون خط مثل خط بالایی‌اش باشه.حالا کد رو ذخیره و اجرا کنید و نتیجه رو ببینید.عبارت شرطی if-elseخب تا اینجا به بررسی شرط‌های ساده پرداختیم. به عبارتی ما فقط یه وضعیت داریم که میخوایم چک بشه. اما گاهی اوقات ما قصد داریم که مثلا اگه شرط موردنظر ما درست نبود، بخش دیگه‌ای رو اجرا کنه.یعنی اگه در ابتدا شرط if ما درست بود، کدهای مربوط به اون بخش رو اجرا می‌کنه و کاری به بخش else نداره و در پایان هم از اون بخش اصطلاحا می‌پره و ادامه برنامه رو اجرا می‌کنه. اما اگه شرط if درست نباشه، میره سراغ بخش else و کدهای مربوطه رو اجرا می‌کنه.برای توضیحات بیشتر اجازه بدین یه مثال بزنم.x = 18
if x == 18:
    print(‘Your number is 18’)
else:
    print(‘Your number is not 18’)
print(‘finish the code’)عبارات شرطی if-elifتا اینجا شرط‌هایی رو بررسی کردیم که دو حالت داشتند. اگه شرط ما برقرار بود که اونو انجام میده و اگر هم برقرار نبود قسمت دوم رو اجرا می‌کرد. اما در ادامه گاهی نیاز میشه که ما شرط‌های مختلفی رو بررسی کنیم. در اینجا باید از شرط‌های زنجیره‌ای if-elif استفاده کنیم. استفاده از زنجیره شرط‌ها به این صورت هستش که در ابتدا شرط اول رو با if مشخص می‌کنیم و در ادامه شرط‌های دیگه رو با elif می‌نویسیم و اگر هم هیچ یک از شرط‌های ما صحیح نبود در پایان اونا else میاریم. به مثال زیر دقت کنید:x = 5
if x == 18:
    print(‘Your number is 18’)
elif x &lt; 18: 
    print(‘Your number is smaller than 18’) 
elif x &gt; 18:
    print(‘Your number is bigger than 18’)
print(‘finish the code’)همون‌طور که می‌بینید ما به هر اندازه می‌تونیم elif قرار بدیم و شرط‌های مختلفی رو بررسی کنیم. حتی می‌تونیم else آخری رو هم نیاریم.به پایان این قسمت رسیدیم. امیدوارم که مطالب جدیدی از این بخش یاد گرفته باشین و با استفاده از اونا بتونید برنامه‌های منعطف‌تری رو بنویسید.منبع: آموزش پایتون به زبان ساده: عبارات شرطی - وبسایت شخصی محمدحسین میثاق‌پور</description>
                <category>آموزش پایتون به زبان ساده</category>
                <author>محمدحسین میثاق‌پور</author>
                <pubDate>Fri, 10 Apr 2020 19:50:51 +0430</pubDate>
            </item>
                    <item>
                <title>آموزش پایتون به زبان ساده: دیکشنری</title>
                <link>https://virgool.io/python-learning/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D9%BE%D8%A7%DB%8C%D8%AA%D9%88%D9%86-%D8%A8%D9%87-%D8%B2%D8%A8%D8%A7%D9%86-%D8%B3%D8%A7%D8%AF%D9%87-%D8%AF%DB%8C%DA%A9%D8%B4%D9%86%D8%B1%DB%8C-pc8rgom25uax</link>
                <description>سلامت خدمت کاربران محترم.همون‌طور که می‌دونید ما یکی از چیزهایی که زیاد توی برنامه‌هامون ازش استفاده می‌کنیم، داده‌ها و اطلاعات هستند. یعنی برنامه‌ای که داده و اطلاعات و داده‌ای که نداشته باشه هیچ کاری باهاش نمیشه کرد. تو این قسمت قصد داریم تا با یه نوع جدید داده‌ای آشنا بشیم که با به کارگیری اون می‌تونیم برنامه‌های قدرتمندتری رو بنویسیم.بیاین یه مرور سریعی داشته باشیم بر مباحث قبل…ما ابتدا اومدیم برای ذخیره داده‌هامون متغیرها رو تعریف کردیم و کار با اونها رو یاد گرفتیم.در ادامه دیدیم که اگه بخوایم با مجموعه‌ای از متغیرهای مرتبط با هم کار کنیم بهتره که از لیست‌ها استفاده کنیم.اما گاهی اوقات استفاده از لیست‌ها برای ما مناسب نیستند.آخه توی لیست‌ها فقط یه لیستی از مقادیر داریم که با ترتیب خاصی کنار هم قرار گرفتند و اطلاعات دیگه‌ای به ما نمیدن.مثلا فرض کنید که قراره یه لیستی از شماره تلفن افراد داشته باشین. اینجا دو تا چیز مهمه. یکی نام اون شخص و دیگری شماره تلفن اون شخص.اینجا دیگه زیاد جالب نیس که از لیست‌ها استفاده کنیم. چون فقط یه لیستی از شماره‌ها رو داریم یا اینکه فقط یه لیستی از اشخاص رو خواهیم داشت که اینها به تنهایی به درد ما نمیخوره. اینجا بود که ایده استفاده از دیکشنری مطرح شد!دیکشنری‌ها رو میشه مثل یه دفترچه تلفن تعریف کرد که دارای یه سری اسامی منحصر به فرد و شماره‌های مرتبطی هستش. یا یه مثال دیگه که خیلی هم مرتبط با اونه، لغات نامه‌ها یا دیکشنری‌ها هستند که البته این نام‌گذاری دیکشنری‌ها هم از این جهته که خیلی شبیه اوناست.در دیکشنری‌ها ما یه سری لغات داریم و یه سری معانی. یا به یه عبارت دیگه دیکشنری‌ها از دو بخش اصلی تشکیل شده‌اند:کلید (Key) و مقدار (Value)در واقع ما در دیکشنری‌ها بر خلاف لیست‌ها یه مجموعه‌ای از زوج‌ها داریم.در ادامه چند تا از تفاوت‌های لیست‌ها و دیکشنری‌ها رو میگم:تفاوت لیست‌ها و دیکشنری‌هادر لیست‌ها ترتیب مکان عناصر اهمیت داره در صورتی که در دیکشنری ترتیب مهم نیس.در لیست‌ها می‌تونیم مقادیر تکراری داشته باشیم، اما در دیکشنری‌ها، کلیدها منحصر به فردند و نمیشه دو تا کلید با نام یکسان داشت.در لیست‌ها داده‌ها تکی هستند، اما در دیکشنری‌ها داده‌ها به صورت زوج و دو تا دو تا ذخیره شده‌اند.خب حالا که با دیکشنری‌ها و کاربردشون آشنا شدیم، بهتره که نحوه‌ی نوشتن اونا رو به همراه چند تا مثال داشته باشیم.dict1 = {
    “first_name”: “MohammdHossein”,
    “last_name”: “Misaghpour”,
    “age”: 21,
    “city”: “Kashan”
}توضیح:خب بیاین که سینتکس دیکشنری‌ها رو با هم دیگه بررسی کنیم.اول و آخر اونها کاراکتر آکلاد { } میاد.داده‌ها زوج یا دوتایی هستند.هر داده‌ای از دو بخش تشکیل شده: کلید یا key و مقدار یا valueدر ابتدا کلید مشخص میشه که حتما باید داخل علامت نقل‌قول قرار بگیره.بعد از اون مقدار ما با یه کاراکتر : از کلید جدا میشه.کلیدها از هر نوعی میتونن باشن مثلا: رشته یا عدد و…در صورتی که زوج داده‌های ما بیشتر از یکی باشند با کاما , از همدیگه جدا میشن. البته در انتهای آخرین داده لازم نیست که کاما بیاد.مثل بقیه انواعی که قبلا تعریف کردیم میتونیم با دیکشنری‌ها عملیات مختلفی انجام بدیم. مثلا اونا رو چاپ کنیم. به بعضی از داده‌ها دسترسی داشته باشیم، مقدار اونا رو تغییر بدیم و کارهای دیگه.دسترسی به valueهادسترسی به داده‌های دیکشنری شبیه لیست‌هاست فقط تفاوتش اینه که داخل [ ] باید کلید موردنظرمون بیاد. البته حواسمون باید باشه که این کلید داخل علامت نقل‌قول باشه. به مثال زیر دقت کنید:print(dict1[‘first_name’])بروزرسانی دیکشنریمی‌تونیم مقدار کلید موردنظرمون رو تغییر بدیم. خیلی شبیه تغییر آیتم‌های لیست‌ها و متغیرهاست. مثال:dict1 = {
    “first_name”: “MohammdHossein”,
    “last_name”: “Misaghpour”,
    “age”: 21,
    “city”: “Kashan”
}print(dict1)dict1[‘first_name’] = ‘Mohammad’print(dict1)تو همین مثال بالا اگه کلیدی رو که میخوایم مقدارش رو عوض کنیم توی دیکشنری ما وجود نداشته باشه، به ما دیکشنری ما اضافه میشه. مثال:dict1 = {
    “first_name”: “MohammdHossein”,
    “last_name”: “Misaghpour”,
    “age”: 21,
    “city”: “Kashan”
}print(dict1)dict1[‘major’] = ‘Computer Engineer’print(dict1)اگه این کد رو اجرا کنید و خروجی رو بررسی کنید، متوجه میشین که یه کلید به دیکشنری ما افزوده شده. اگه کلیدی هم قبلا وجود داشت در اون صورت مقدارش بروزرسانی میشه و چیزی به دیکشنری اضافه نمیشه.حذف مقادیر دیکشنریگاهی مواقع ما قصد داریم که یه کلیدی رو از دیکشنری‌مون حذف کنیم که در این صورت می‌تونیم از دو تابع del یا pop استفاده کنیم. در مثال زیر نحوه استفاده از اونا بیان شده و هر دو خط یه کار رو انجام میدن.del dict1[‘first_name’]
dict1.pop(‘first_name’)البته نباید دو تا رو با همدیگه برای یه مقدار استفاده کرد چون یکی‌شون هم کافیه و اگه مثلا این کد بالا رو اجرا کنید ممکنه با خطا روبرو بشین.به نظرم برای این قسمت کافیه. البته برای دیکشنری‌ها خیلی کارای دیگه میشه انجام میده اما قصد دارم که در مقالات بعدی و با موضوعات جدید، آموزش کار با اونا رو تکمیل کنم. خب این مقاله هم به پایان رسید. امیدوارم که از اون لذت برده باشین. اگه سوال و نظری دارین، می‌تونید در بخش کامنت‌ها با ما به اشتراک بذارین.منبع: آموزش پایتون به زبان ساده: دیکشنری - وبسایت شخصی محمدحسین میثاق‌پور</description>
                <category>آموزش پایتون به زبان ساده</category>
                <author>محمدحسین میثاق‌پور</author>
                <pubDate>Fri, 10 Apr 2020 16:36:45 +0430</pubDate>
            </item>
                    <item>
                <title>آموزش پایتون به زبان ساده: کار با لیست‌ها</title>
                <link>https://virgool.io/python-learning/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D9%BE%D8%A7%DB%8C%D8%AA%D9%88%D9%86-%D8%A8%D9%87-%D8%B2%D8%A8%D8%A7%D9%86-%D8%B3%D8%A7%D8%AF%D9%87-%DA%A9%D8%A7%D8%B1-%D8%A8%D8%A7-%D9%84%DB%8C%D8%B3%D8%AA%D9%87%D8%A7-dteghsngbouz</link>
                <description>در قسمت قبل، لیست‌ها رو معرفی کردیم و یه سری توابع کار با لیست‌ها مثل حذف و اضافه کردن رو بررسی کردیم. در این قسمت می‌خوایم مطالبی بیشتری درباره کار با لیست‌ها رو یاد بگیریم. کار با حلقه در لیست‌هاهمون‌طور که می‌دونید لیست‌ها مجموعه‌ای از داده‌های کنار هم هستند که با ترتیب خاصی کنار هم قرار گرفته‌اند. گاهی اوقات ما قصد داریم که در تک تک عناصر لیست پیمایش کنیم و مثلا مقادیر اونا رو چاپ کنیم. یا بلاهای دیگه‌ای به سرشون بیاریم!یکی از راه‌ها اینه که بیایم به صورت تک تک با استفاده از اندیس اونا مقادیر رو نشون بدیم. با یک مثال نحوه‌ی این کار رو توضیح میدم. ابتدا یکی از مثال‌های قبلی رو بررسی کنیم:languages = [‘C#’,’Java’,’C’,’Python’,’C++’]
print(languages)در این مثال ما یه لیست تعریف کردیم و بعد از اون با استفاده از تابع print کل لیست رو توی خروجی چاپ کردیم. اما اگه به خروجی نگاه کنید، فرمت جالبی نداره و دقیقا لیست رو با تمام مخلفاتش یعنی کاماها و براکت‌ها نشون داده! اما مثلا ما قصد داریم که تک تک آیتم‌های لیست رو زیر هم نشون بده. یه راهی که فعلا به ذهنمون میرسه اینه که بیایم چند بار دستور print رو بنویسیم و هر بار به ترتیب مقادیر عناصر رو چاپ کنیم. مثال زیر:languages = [‘C#’,’Java’,’C’,’Python’,’C++’]print(languages[0])
print(languages[1])
print(languages[2])
print(languages[3])
print(languages[4])اگه برنامه رو اجرا کنید، می‌بینید که خروجی نسبتا قشنگ‌تری داره. اما کار با لیست‌ها به این شکل در ادامه ما رو با مشکلاتی روبرو می‌کنه. مثلا چه مشکلی؟تو این مثال ما تعداد عناصر محدودی رو داشتیم. ولی اگه مثلا ۱۰۰ تا یا ۱۰۰۰ تا عنصر داشتیم چیکار می‌کردیم؟ آیا برای تک تک اونا این تابع print رو تکرار می‌کردیم؟ توی تعداد بالا اصلا چه جوریه بدونیم که لیست‌ما چه تعداد عنصر داره؟یا این که بعضی مواقع ممکنه ما یه سری از اندیس‌ها رو فراموش کنیم یا تکرار کنیم..اینجا بود که برنامه‌نویسا تصمیم گرفتند که از حلقه‌ها یا لوپ‌ها استفاده کنن. حلقه‌ها چی هستند؟ما با استفاده از حلقه‌ها می‌تونیم کارهای تکراری رو با تنها با نوشتن تعداد بسیار کد کمتر انجام بدیم. چه ده بار، چه صد بار، چه هزار بار. اصلا کار کامپیوتر اینه. مثل ما آدما نیستند که خسته بشن یا اشتباه کنن:)خب اجازه بدین تا با نحوه‌ی کار با حلقه‌ها آشنا بشیم. به طور کلی ما دو نوع حلقه در پایتون داریم: حلقه for و حلقه while. که برای کار با لیست‌ها اغلب از حلقه for استفاده میشه. بیاین همین مثال بالا رو با استفاده از حلقه for بازنویسی کنیم:languages = [‘C#’,’Java’,’C’,’Python’,’C++’]for item in languages:
    print(item)توضیح:در ابتدا ما یه لیستی رو تعریف کردیم و ادامه یه حلقه for رو نوشتیم که الان میخوایم با نحوه‌ی کار با اون آشنا بشیم.در ابتدای خط کلمه کلیدی for میاد.بعد از اون نام یه متغیر میاد. در واقع این یه متغیر موقت با نام دلخواه هستش که توی لیست به کار برده میشه.بعد از اون کلمه کلیدی in میاد.و سپس نام لیست‌مون میاد. در اینجا ما یه لیستی با نام languages تعریف کردیم که در اینجا دقیقا همین نام باید بیاد.و در نهایت هم کاراکتر کلیدی : باید بیاد.در خط بعد دستور یا دستوراتی که قراره تکرار بشن باید بعد از ۴ فاصله یا اندازه یه تب نسبت به for شروع بشن.نکته‌ای که وجود داره اینه که زبان پایتون به این فاصله‌ی تب‌ها خیلی اهمیت میده.حالا یه بار به زبان ساده بگم که این حلقه چی کار می‌کنه.در ابتدا یه متغیر موقت ساخته میشه. مثلا توی این مثال item هستش، که این متغیر هر بار نقش یه اندیس از لیست هستش. یعنی از اولین عنصر شروع میشه و تا آخرین عنصر تکرار میشه. در هر بار دستوراتی که در حلقه for وجود دارند رو اجرا می‌کنه.البته این مثال ساده‌ای از کار با حلقه‌ها بود. مثلا می‌تونیم تعداد خط‌های بیشتری توی خروجی نشون بدیم. و یا خروجی مون به شکل دیگه‌ای نشون داده بشه. به مثال زیر دقت کنید:languages = [‘C#’,’Java’,’C’,’Python’,’C++’]for item in languages:
    print(F”{item} is a language”)
    print(‘****’)
print(‘*** End of Code ***’)توضیح:اگه دقت کنید حلقه ما دو دستور داره. چرا؟ چون به اندازه یه تب یا چهار فاصله نسبت به for فاصله دارند. اما اگه دقت کنید، دستور آخر یک بار و اون هم بعد از پایان حلقه اجرا میشه.در کار با حلقه‌ها ممکنه که با خطاهایی روبرو بشین. مثلا:کاراکتر : را در پایان خط حلقه یادتون بره.بعضی مواقع این فاصله‌ها رو رعایت نکنید. و اشتباها بعضی جاها رو اضافه فاصله بذارین و بعضی جاها رو هم از قلم بندازین.خب تا اینجا با نحوه‌ی کار با حلقه‌ها در لیست‌ها آشنا شدیم. در ادامه قصد داریم تا ویژگی‌های دیگه‌ای رو هم بررسی کنیم.ساخت لیست‌های عددیهمون‌طور که می‌دونین انواع داده‌های مختلفی می‌تونن در لیست‌‌ها تعریف بشن. برای مثال ما می‌تونیم لیستی از اعداد رو داشته باشیم. در ادامه قصد داریم تا با استفاده از تابع range دنباله‌ای از اعداد رو تعریف کنیم.کار با تابع rangeبه طور کلی سه نوع حالت برای کار با تابع range وجود داره.زمانی که یک آرگومان داریم.زمانی که دو آرگومان داریم.زمانی که ۳ آرگومان داریم.خب اجازه بدین تا برای هر کدوم مثالی رو بنویسم که با نحوه‌ی کار اونا آشنا بشین.for i in range(6):
    print(i)توضیح:در اینجا ما یه آرگومان برای تابع range داریم و این تابع از مقدار پیش فرض صفر شروع میشه و تا یک رقم قبل از اون مقدار آرگومان چاپ میشه. برای نمونه اگه برنامه رو اجرا کنید، توی خروجی مقادیر ۰ تا ۵ نشون داده شده.for i in range(1, 6):
    print(i)بعضی مواقع ما قصد داریم که لیست‌مون از یه مقدار خاصی شروع بشه و به طور پیش‌فرض از صفر شروع نشه. در اینجا باید دو تا آرگومان به تابع بدیم. اولی عنصر شروع ما هستش و دومی عنصر پایانی. برای نمونه تو خروجی مقادیر ۱ تا ۵ چاپ شده‌اند.به طور پیش‌فرض تعداد گام‌ها در این تابع یک هستش. یعنی یکی یکی اعداد زیاد میشن. اما مثلا یه موقع ما میخوایم که دنباله‌ای از اعدادی رو داشته باشیم که دو تا دو تا یا سه تا سه تا زیاد بشن. در اینجا ما باید سه تا آرگومان برای تابع در نظر بگیریم. اولی برای عدد شروعدومی برای عدد پایانی و سومی گام حلقهمثال زیر رو بررسی کنید.for i in range(1, 20, 3):
    print(i)کارکردن با بخشی از لیستزمان‌هایی پیش میاد که قصد داریم فقط به یه بازه‌ی خاصی از لیست‌ها کار کنیم. در واقع ما میخوایم یه برشی از لیست داشته باشیم و با اون کار کنیم. برای این منظور باید از کارکترهای [ : ] استفاده کنیم. در ادامه نحوه‌ی به کارگیری اونا رو به همراه مثال توضیح میدم.languages = [‘C#’,’Java’,’C’,’Python’,’C++’]print(languages[1:3])اگه دقت کنید، یه جورایی شبیه کار با اندیس‌ها توی لیست‌ها هستش. اما اینجا داخل [ ] دو تا عدد به همراه یه : بین‌شون داریم. تو این مثال یعنی من یه بازه میخوام که شروعش از اندیس یکم باشه و پایانش تا یک عنصر قبل از ۳. حالا با هم مثال‌های دیگه رو بررسی کنیم.languages = [‘C#’,’Java’,’C’,’Python’,’C++’]print(languages[:3])اگه تو استفاده از slice ها، عدد اول رو نذاریم، یعنی یه چیزی شبیه مثال بالا. برنامه به طور پیش فرض از اولین عنصر یعنی اندیس صفرم شروع میشه و تا اندیس پایانی که توی آرگومان مشخص شده، برش زده میشه. و یه مثال دیگه هم بزنیم و این بحث رو تکمیل کنیم.languages = [‘C#’,’Java’,’C’,’Python’,’C++’]print(languages[1:])اگه جای عدد دوم رو خالی بذاریم. برنامه به طور پیش‌فرض تا انتهای لیست رو در نظر نمیگیره. حالت‌های مختلفی رو بررسی کردیم. اما یه حالت دیگه مونده و اونم اینه که اگه عدد اول و دوم رو خالی بذاریم‌، اون وقت چی میشه؟ بله درسته. کل لیست رو در نظر می‌گیره. می‌تونید امتحان کنید. مثال پایین:languages = [‘C#’,’Java’,’C’,’Python’,’C++’]print(languages[:])تاپل - Tupleخب تا اینجا مثال‌های متنوعی از کار با لیست‌ها رو یاد گرفتیم. یه نوع دیگه‌ای هم وجود داره که به نام تاپل یا tuple. تاپل‌ها در واقع شبیه لیست‌ها هستند و تنها تفاوتشون اینه که نمیشه اونا رو تغییر داد و فقط برای بار اول تعریف میشند. اما مثل لیست‌ها میشه به مقادیرشون دسترسی داشت. و البته یه تفاوتی هم در سینتکس دارند و اون اینه که با () نشون داده میشن. در ادامه یه مثال از تاپل‌ها اومده:tuple1 = (1, 3, 4)همونطور که گفتم کار با تاپل‌ها دقیقا مثل کار با لیست‌هاست فقط تنها تفاوتشون توی تعریف اولیه‌شون هستش که در داخل () تعریف میشن. و همچنین مقادیرشون فقط خوندنی هستند و در طول برنامه ثابت‌اند و نمیشه تغییرشون داد. اگر یه وقت خدایی ناکرده تصمیم گرفتید مقدار یه عنصر از تاپل رو تغییر بدین، برنامه‌تون با خطا مواجه میشه!خب، به پایان این مقاله رسیدیم. امیدوارم که مطالب جدیدی و مفیدی از این مقاله یاد گرفته باشین.منبع: آموزش پایتون به زبان ساده: کار با لیست‌ها  - وبسایت شخصی محمدحسین میثاق‌پور</description>
                <category>آموزش پایتون به زبان ساده</category>
                <author>محمدحسین میثاق‌پور</author>
                <pubDate>Fri, 10 Apr 2020 16:22:49 +0430</pubDate>
            </item>
                    <item>
                <title>آموزش پایتون به زبان ساده: آشنایی با لیست‌ها</title>
                <link>https://virgool.io/python-learning/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D9%BE%D8%A7%DB%8C%D8%AA%D9%88%D9%86-%D8%A8%D9%87-%D8%B2%D8%A8%D8%A7%D9%86-%D8%B3%D8%A7%D8%AF%D9%87-%D8%A2%D8%B4%D9%86%D8%A7%DB%8C%DB%8C-%D8%A8%D8%A7-%D9%84%DB%8C%D8%B3%D8%AA%D9%87%D8%A7-os90qifgtd7u</link>
                <description>سلامی دوباره خدمت بازدیدکنندگان عزیز. در این قسمت قصد داریم تا به یکی دیگه از اجزای کاربردی برنامه‌نویسی بپردازیم و با دونستن و به کارگیری اون کدهای قدرتمندتری رو بنویسیم. موضوع امروز ما درباره لیست‌ها هستش.بیاین یه مروری داشته باشیم بر مباحث قبل.اگه یادتون باشه ما گفتیم که برای نگهداری مقادیرمون از متغیرها استفاده می‌کنیم. متغیرها می‌تونستند انواع مختلفی داشته باشند. متنی، عددی و…حالا تصور کنید که شما قراره با یه تعداد زیادی از متغیرها کار کنید. مثلا یه لیستی از اعداد رو قراره که پردازش کنید. یا یه لیستی از نام‌ها رو بررسی کنید و چیزای دیگه. اینجا بود که اومدن برای زبان‌های برنامه‌نویسی لیست‌ها رو تعریف کردند.لیست‌ها در واقع مجموعه‌ای از متغیرها هستند که در یک مجموعه با نام مشخصی ذخیره میشن. برای اینکه بیشتر با این موضوع آشنا بشیم. اجازه بدین یه مثالی بزنم. فرض کنید که شما لیستی از زبان‌های برنامه‌نویسی دارین و قصد دارین که اونا رو چاپ کنید. برنامه‌ی زیر این کار رو برای ما انجام میده.languages = [‘C’,’C++’,’C#’,’Java’,’Python’]
print(languages)توضیح:خب ابتدا بیایم که با نحوه‌ی تعریف لیست‌ها یا اصطلاحا سینتکس اونا آشنا بشیم.همون‌طور که می‌بینید لیست‌ها هم مثل متغیرها دارای یه نام در ابتدا هستند و اختیاری هستند ولی توصیه میشه که از نام‌های جمع استفاده بشه تا خوانایی برنامه هم بیشتر باشه.نحوه‌ی نمایش لیست‌ها با کاراکترهای [ ] مشخص میشند و عناصر ما داخل اونها قرار می‌گیرند.عناصر لیست حتما باید با کاراکتر کاما , از هم دیگه جدا بشن. اگه احیانا جایی یادتون رفت کاما بذارین، برنامه‌تون با خطا مواجه میشه.عناصر لیست‌تون میتونه هر چیزی باشه و برای مثال فقط منحصر به رشته‌ها نیست. مثلا میتونه لیستی از اعداد باشه. مثلا:list1 = [1, 2, 3, 5]خب حالا که با نحوه‌ی تعریف لیست‌ها آشنا شدیم اجازه بدین در ادامه چند تا امکانات دیگه برای کار با اونا رو بهتون معرفی کنم.ساده ترین چیز اینه که شما کل لیست‌تون رو چاپ کنید. مثال زیر:languages = [‘C’,’C++’,’C#’,’Java’,’Python’]
print(languages)دسترسی به عناصر یک لیستگاهی اوقات ما نمی‌خوایم که به کل لیست دسترسی داشته باشیم و می‌خوایم مثلا با مقدار یه عنصر خاصی کار کنیم و اونو تغییر بدیم. اینجا باید با اندیس اونا کار کنیم. اندیس‌ها در واقع شماره موقعیت عناصر ما در لیست هستند. مثلا عنصر اول یا عنصر دوم و الی آخر. برای مثال ما میخوایم اولین آیتم لیست رو توی خروجی نشون بدیم. به مثال زیر توجه کنید:languages = [‘C’,’C++’,’C#’,’Java’,’Python’]
print(languages[1])اگه کدتون رو اجرا کنید متوجه میشین که مقدار ‘C++’ به عنوان خروجی نشون داده شده.به نظرتون جایی اشتباه رخ نداده؟مگه اولین آیتم لیست ‘C‘ نیستش؟پس چرا اونو نشون نداده؟به نظر شما کامپیوتر اشتباه کرده؟اندیس‌ها از صفر شروع میشن، نه یکخیر. کامپیوتر اشتباه نکرده. چرا؟بر خلاف ما که برای شمارش از یک شروع می‌کنیم، اکثر زبانهای برنامه‌نویسی از صفر شروع میشن.در واقع اولین آیتم لیست توی این زبان میشه اندیس صفرم. و مثلا دومین عنصر در لیست میشه اندیس یکم و همین‌طور برای بقیه عناصر هم همین روند وجود داره.برای اینکه این موضوع جا بیفته پیشنهاد می‌کنم که اندیس‌های دیگه‌ای رو امتحان کنید تا متوجه این شماره‌گذاری بشین. نگران نباشین یه خورده که کار کنین عادی میشه. چون ما قبلا عادت داشتیم که از یک شروع کنیم اما کامپیوتر از صفر شروع می‌کنه:)اندیس‌های منفییکی از ویژگی‌های جالب زبان پایتون کار با اندیس‌های منفی هستش.اندیس منفی دیگه یعنی چه؟مگه عناصر از صفر شروع نمیشن؟چرا. اما اندیس گذاری منفی یه نوع شماره گذاری معکوس هستش. یعنی چی؟یعنی از آخر شروع می کنه به اول. به عبارتی ترتیب شمارش برعکسهمثلا آخرین آیتم لیست رو میشه با اندیس 1- نشون داد. مثال زیر:print(languages[-1])یا مثلا یکی مونده با آخری رو میشه با اندیس 2- نشون داد و به همین ترتیب برای عناصر دیگه.حالا که با اندیس‌ها آشنا شدیم، می‌تونیم کارهای مختلفی با اونا انجام بدیم. مثلا می‌تونیم با استفاده از همین اندیس‌ها که کمی قبل توضیح دادیم می‌تونیم مقدار یه عنصر رو تغییر بدیم و مثل گذشته هر بلایی که سر متغیر‌های تکی می‌اوردیم سر اونا هم بیاریم:)مثلا بیاین که مقدار عنصر اول لیست رو تغییر بدیم و دوباره اونو چاپ کنیم:languages = [‘C’,’C++’,’C#’,’Java’,’Python’]
print(languages)languages[0] = ‘Kotlin’
print(languages)کد بالا رو اجرا کنید و خروجی رو بررسی کنید. متوجه میشین که در خط دوم خروجی مقدار اول لیست تون تغییر کرده.خب بریم سراغ بلاهای دیگه که میشه سر لیست‌ها اورد. در ادامه قصد داریم کارهایی مثل اضافه و حذف کردن عناصر لیست رو با هم دیگه یاد بگیریم.افزودن آیتم جدید به لیستافزودن عنصر به آخر لیست به کمک تابع appendاین تابع عناصر جدید رو به آخر لیست اضافه می کنه. مثال زیر:languages = [‘C’,’C++’,’C#’,’Java’,’Python’]
print(languages)languages.append(‘PHP’)
print(languages)افزودن عنصر به موقعیت دلخواه در لیست به کمک تابع insertاین تابع هم شبیه تابع قبلی هستش ولی تفاوتش اینه که می‌تونیم هرکجا از لیست‌مون خواستبم، عنصر رو اضافه کنیم و فقط محدود به آخر لیست نیستیم. این تابع دو تا ورودی داره:اولی برای شماره اندیسی هستش که میخوایم عنصرمون تو اون موقعیت باشه.و دومی هم مقدار اون آیتم موردنظر.به مثال زیر توجه کنید:languages = [‘C’,’C++’,’C#’,’Java’,’Python’]
print(languages)languages.insert(1, ‘PHP’)
print(languages)به غیر از اضافه‌کردن ما گاهی اوقات قصد داریم که برخی از عناصر رو از لیست‌مون حذف کنیم. برای این منظور می‌تونیم از چند تا روش استفاده کنیم.حذف عنصر از لیستحذف یک عنصر با استفاده از عبارت delبا استفاده از عبارت del میشه به دو صورت عملیات حذف رو انجام داد:یه عنصر خاصی از لیست رو با مشخص کردن اندیس‌اش حذف کرد. مثال زیر:languages = [‘C’,’C++’,’C#’,’Java’,’Python’]
print(languages)del languages[0]
print(languages)یه کاربرد دیگه‌اش هم این هستش که کل لیست رو یک جا حذف کنه. در این حالت دیگه نیازی به مشخص کردن اندیس نیست. مثال زیر:languages = [‘C’,’C++’,’C#’,’Java’,’Python’]
print(languages)del languages
print(languages)البته اگه مثال بالا رو اجرا کنید، با یه خطا مواجه میشین که میگه چنین متغیری تعریف نشده. در واقع از خط سوم به بعد کد، لیست ما به کلی حذف شه.حذف کردن یک عنصر با استفاده از تابع popتابع pop یه تفاوتی نسبت به del داره و اون این هستش که بعد از حذف یه آیتم از لیست، می‌تونیم اون آیتم رو در یه متغیر دیگه‌ای ذخیره کنیم. البته ذخیره عنصر حذف شده در آیتم یه کار اختیاری هستش و می‌تونید انجام ندید.شما با استفاده از تابع pop به دو صورت می‌تونید عناصر رو از لیست حذف کنید.حذف آخرین عنصر از لیستlanguages = [‘C’,’C++’,’C#’,’Java’,’Python’]
print(languages)deleted_lan = languages.pop()
print(deleted_lan)
print(languages)همون‌طور که در مثال بالا می‌بینید ما از متد pop بدون آرگومان استفاده کردیم. و از طرفی عنصر حذ‌ف‌شده رو هم داخل یه متغیر با نام deleted_lan ذخیره کردیم.حذف عنصر از مکان دلخواهدر بعضی مواقع ما قصد داریم که یه عنصر از اندیس دلخواهی از لیست رو حذف کنیم. مثلا عنصر اول. در اینجا هم از همون متد pop استفاده میشه اما اینبار بهش یه ورودی داده میشه که در واقع اندیس مورد نظر ماست. به مثال زیر توجه کنین:languages = [‘C’,’C++’,’C#’,’Java’,’Python’]
print(languages)deleted_lan = languages.pop(0)
print(deleted_lan)
print(languages)حذف عنصر با استفاده از مقدار - تابع removeگاهی اوقات ما نمی‌دونیم که عنصری که قصد حذف کردنش رو داریم با چه اندیسی در لیست‌مون ذخیره شده و تنها مقدارش رو داریم. در اینجا با استفاده از تابع remove و واردکردن مقدارمون به عنوان آرگومان این تابع می‌تونیم اون عنصر رو از لیست حذف کنیم. در ادامه با یه مثال چگونگی استفاده از این تابع توضیح داده شده.languages = [‘C’,’C++’,’C#’,’Java’,’Python’]
print(languages)languages.remove(‘C#’)
print(languages)نکته: در استفاده از تابع از مقدار صحیح عنصرتون مطمئن باشین. چون اگه یه وقت خدایی ناکرده مقداری رو وارد کنید که توی لیست‌تون موجود نباشه، برنامه با خطا مواجه میشه.خب تا اینجا با یه سری از توابعی از جمله اضافه کردن و حذف کردن عناصر از لیست‌ها کار کردیم. در بخش پایانی قصد دارم که با یکی دیگر از کارایی که میشه با لیست‌‌ها انجام داد آشنا بشم.مرتب‌سازی لیست‌هاحتما شما هم در دوران مدرسه متوجه شدین که اسامی افراد رو برای حضور و غیاب بر اساس ترتیب حروف الفبا میخونن. در واقع ما یه لیست مرتب‌شده ای بر اساس حروف الفبا داریم. در بعضی از لیست‌ها که شامل اعداد باشه، به ترتیب کوچک به بزرگ مرتب میشن. در پایتون میتونیم به کمک توابع مرتبط‌سازی، لیست‌ها رو مرتب کنیم. به دو طریق میشه لیست‌ها رو مرتب کرد:مرتب‌سازی دائمی و موقتدر مرتب‌سازی دائمی ترتیب کل لیست عوض میشه، اما در مرتب‌سازی موقت، مثلا برای نمایش استفاده میشه اما ترتیب عناصر تغییری پیدا نمی‌کنه.مرتب‌سازی دائمی به کمک متد sortlanguages = [‘C#’,’Java’,’C’,’Python’,’C++’]
print(languages)languages.sort()
print(languages)اگه مثال بالا رو اجرا کنید، متوجه میشین که ترتیب عناصر در خروجی دوم تغییر کرده.مرتب‌سازی موقت به کمک تابع sortedlanguages = [‘C#’,’Java’,’C’,’Python’,’C++’]print(sorted(languages))print(languages)به نحوه‌ی استفاده از این تابع دقت کنید. همچنین اگه کدتون رو اجرا کنید، در خط اول یه لیست مرتب شده‌ای نشون داده میشه، اما خط دوم خروجی نشون میده که لیست ما ترتیبش تغییری نکرده و تنها در خط قبل یه مقدار موقت رو توی خروجی نشون داده.خب فکر می‌کنم تا اینجا مطالب زیادی از کار با لیست‌ها رو یاد گرفتیم. البته کلی توابع دیگه هم وجود داره و تغییرات دیگه هم میشه در لیست‌ها انجام داد که انشاالله در قسمت‌های بعد به صورت کامل‌تری اونا رو آموزش میدم. امیدوارم که این آموزش هم براتون مفید بوده باشه.منبع: آموزش پایتون به زبان ساده: آشنایی با لیست‌ها - وبسایت شخصی محمدحسین میثاق‌پور</description>
                <category>آموزش پایتون به زبان ساده</category>
                <author>محمدحسین میثاق‌پور</author>
                <pubDate>Fri, 10 Apr 2020 16:12:01 +0430</pubDate>
            </item>
                    <item>
                <title>آموزش پایتون به زبان ساده: ریاضیات</title>
                <link>https://virgool.io/python-learning/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D9%BE%D8%A7%DB%8C%D8%AA%D9%88%D9%86-%D8%A8%D9%87-%D8%B2%D8%A8%D8%A7%D9%86-%D8%B3%D8%A7%D8%AF%D9%87-%D8%B1%DB%8C%D8%A7%D8%B6%DB%8C%D8%A7%D8%AA-udbsiitmi2rs</link>
                <description>امروز قصد دارم که با یکی از مهم‌ترین مباحث پایه‌ای در برنامه‌نویسی صحبت کنیم و اون ریاضیات در پایتون هستش. البته شما هم شاید جزو اون دسته افرادی باشید که با ریاضیات میانه خوبی ندارین. اما نگران نباشید در این مقاله سعی می‌کنم که مطالب خیلی پیچیده‌ای نگم و در حد نیازمون یه سری مطالب رو به بیان ساده بگم.خب قبل از شروع بیایم یه مروری بر موضوعاتی که قراره تو این قسمت بیان داشته باشیم.کار با Python Shell به عنوان ماشین‌حساببررسی انواع اعداد در پایتون – به طور کلی سه نوع عدد در پایتون وجود داره: اعداد صحیح، اعشاری و مختلطانواع عملگرهای ریاضی و اولویت عملگرهاکار با Python Shell به عنوان ماشین حساباحتمالا می‌دونید که کامپیوترها نوعی ماشین‌حساب هستند البته از نوع پیشرفته‌اش. و البته تاریخچه کامپیوتر هم بر میگرده به زمان اختراع ماشین حساب‌ها. حالا اینو گفتم که چی؟ این ابزاری که ما قراره باهاش کار کنیم اسمش IDLE هستش. توی این محیط می‌تونیم ما کدهامون رو خط به خط بنویسیم و اجرا کنیم. همچنین این محیط یه قابلیتی شبیه ماشین حساب داره. مثلا می تونید عبارات ریاضی و محاسباتی مختلفی رو در محیط پایتون شل خط به خط وارد کنید و نتیجه رو ببینید. اجازه بدین با یه مثال این مطلب رو توضیح بدم:ابتدا نرم افزار IDLE رو اجرا کنید.حالا یه عبارت ریاضی مثل زیر رو تایپ کنید و Enter رو بزنید. مثلا:11 + 3 – 4همون طور که دیدین، میشه از این محیط به عنوان ماشین‌حساب هم استفاده کرد و انواع عملیات ریاضی پیچیده‌تری هم انجام داد که مثلا شامل ضرب و تقسیم و توان و چیزای دیگه هم باشه. پیشنهاد می‌کنم که به این مثال اکتفا نکنید و خودتون موارد دیگه‌ای رو هم امتحان کنید.اما یه سوال؟ زمانی که ما مثلا یه سری عبارات پیچیده داریم که ترکیبی از ضرب و تقسیم و جمع و… هستند اونا رو با چه ترتیبی محاسبه کنیم؟ مثلا اول جمع و تفریق ها رو حساب کنیم یا ضرب و تقسیم ها رو؟ اینجاست که اولویت عملگرها اهمیت پیدا می‌کنه.انواع عملگرهای ریاضیخب اول اجازه بدین که انواع عملگرهای ریاضی رو معرفی کنیم. همون‌طور که می‌بینید در ادامه جدول عملگرهای حسابی رو قرار دادم.خب همون طور که میدونید در عبارات ترکیبی و پیچیده طبیعتا باید یه قانون یا اولویتی برای به کارگیری این عملگرها باشه که در جدول پایین به ترتیب اولولیت عملگرها از بالا به پایین اومده.خب فکر می‌کنم بهتره که یه خورده هم عملی کار کنیم و از تئوری فاصله بگیریم.گفتیم که از محیط پایتون شل میشه به عنوان یه ماشین حساب استفاده کرد. اما این کار یه مشکلی داره. چی مثلا؟تا اینجا که این قابلیت شبیه ماشین حساب های معمولیه. اما بعضی مواقع ما نیاز داریم که محاسبات و عبارات خودمون رو ذخیره داشته باشیم و هر بار مجبور نباشیم که اونها رو بنویسیم. اینجاست که باید یه برنامه یا کد رو تو محیط ویرایشگر بنویسیم.برای اینکار از همون محیط پایتون شل، از منوی File -&gt; New File یه پرونده جدید باز کنید و کدهای خودتون رو داخلش بنویسید.توضیح:برای اینکه عبارات خودمون رو ذخیره داشته باشیم باید از متغیرها کمک بگیریم و بهشون مقدار بدیم. مثلا فرض کنید که میخوایم فرمول محاسبه مساحت و محیط یه مستطیل رو بدست بیاریم. خب همون طور که می‌دونید برای حل مسایل ریاضی سه تا عامل داریم:ورودیفرمولخروجیبرای مثال:ورودی‌های ما طول و عرض هستند که به ترتیب با tool و arz مشخص می‌کنیم.فرمول محاسبه مساحت و محیط مربع هم رو که همه بلدید.مساحت = حاصل ضرب طول در عرضمحیط = دو برابر حاصل جمع طول و عرضخروجی ما هم که همون مقادیر مساحت و محیط هستندخب حالا میخوایم یه برنامه خیلی ساده بنویسیم که همین عملیات ساده رو برای ما انجام بده و نتیجه رو توی خروجی نشون بده:tool = 4
arz = 3masahat = tool * arz
mohit = (tool + arz) * 2print(“masahat: “,masahat)
print(“mohit: “,mohit)بعد از نوشتن کدها، برنامه‌تون رو ذخیره کنید و اون رو اجرا کنید. اگه اجرای برنامه رو بلد نیستید، پیشنهاد می‌کنم که قسمت نصب و راه‌ندازی پایتون رو یه نگاهی بهش بیندازین.بعد از اجرا شما باید چنین خروجی‌ای رو داشته باشین:خب این یک مثال ساده بود و شما می‌تونید برای یادگیری بهتر خودتون مثال‌های دیگه‌ای رو هم در نظر بگیرین و کدهاشو بزنید. توصیه می‌کنم که علاوه بر مثال‌هایی که توی این آموزش‌ها گفته میشه خودتون هم دست به کیبرد باشین و بیشتر کد بزنین.این مقاله هم به پایان رسید. امیدوارم که از مطالب و توضیحات اون لذت برده باشین.منبع: آموزش پایتون به زبان ساده: ریاضیات - وبسایت شخصی محمدحسین میثاق‌پور</description>
                <category>آموزش پایتون به زبان ساده</category>
                <author>محمدحسین میثاق‌پور</author>
                <pubDate>Fri, 10 Apr 2020 15:53:53 +0430</pubDate>
            </item>
                    <item>
                <title>آموزش پایتون به زبان ساده: رشته‌ها</title>
                <link>https://virgool.io/python-learning/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D9%BE%D8%A7%DB%8C%D8%AA%D9%88%D9%86-%D8%A8%D9%87-%D8%B2%D8%A8%D8%A7%D9%86-%D8%B3%D8%A7%D8%AF%D9%87-%D8%B1%D8%B4%D8%AA%D9%87%D9%87%D8%A7-u4aads0poovp</link>
                <description>همه‌ی برنامه‌نویسان به متن‌ها در زبان‌های برنامه‌نویسی رشته یا string میگن. رشته همون‌طور که از نامش پیداست یعنی باید شامل رشته‌ای از یک سری چیزها باشه. ما تو دنیای واقعی هم کلمه رشته‌ها رو به کار می‌بریم مثلا رشته گردنبند یا رشته تسبیح! و در دنیای کامپیوتر هم رشته یعنی رشته‌ای از کاراکترها. کاراکترها همون حروف الفبا و اعداد و یه سری علایم نشانه‌گذاری مثل . – + و … هستند. خلاصه هر کلیدی که روی صفحه کلیدتون می‌بینید یه کاراکتره!اجازه بدین تا با نحوه‌ی تعریف رشته‌ها در پایتون با یه مثال آشنا بشین.str1 = ‘hello world’
print(str1)این مثال یکی از مثالهای ابتدایی هستش که قبلا هم داشتیم. در واقع برای تعریف رشته‌ها ما باید اول و آخر اونا رو کاراکترهای نقل‌قول قرار بدیم. می تونید از تک‌کوتیشین ‘ یا دابل‌کوتیشین “ استفاده کنید.اگر بخواین رشته‌های چندخطی داشته باشین باید رشته هاتون بین سه تا علامت نقل‌قول یا کوتیشین قرار بگیره مثل کد زیر:str1 = ‘’’ hello world
How are you? ’’’خب در ادامه قصد داریم تا برای کار با رشته‌ها و انجام یه سری دستکاری‌ها چند تا مورد رو بررسی کنیم. کارای زیادی میشه با رشته ها انجام داد. مثلا:اونا رو با هم دیگه ترکیب کرد.به یه فرمت خاص اونا رو نشون دادو کلی کارای دیگهکه البته توی این مقاله فرصت نمی‌کنیم همه‌شون رو بررسی کنیم و فقط برای نمونه چند تاشون رو میگیم.چسباندن رشته‌هافرض کنید شما می‌خواین نام و نام‌خانوادگی خودتون رو که در متغیرهای جداگانه‌ای ذخیره شده‌اند رو توی یه متغیر جدید بریزین و در واقع یه رشته جدید از اونا بسازین. برای این منظور باید از عملگر + کمک بگیرین. به مثال زیر توجه کنید:first_name = ‘ali’
last_name = ‘ahmadi’
full_name = first_name + last_name
print(full_name)اگه برنامه رو اجرا کنید با چنین خروجی‌ای مواجه میشین:aliahmadiخب همون‌طور که می بینید یه خورده خوانایی این عبارت سخته و بهتر بود که بین نام و نام خانوادگی یه فاصله باشه. برای این منظور میتونید در متغیر first_name بعد از کلمه ali یه فاصله ایجاد کنید و تغییرات رو ذخیره و کدتون رو اجرا کنید.برای اینکه بخواین همین مثال بالا که نمایش نام و نام خانوادگی بود رو با ساختار قشنگ تری بنویسید می‌تونید یه تغییر تو کد بالا بدین. به این صورت که مقدار full_name رو عوض کنید‌. به مثال زیر دقت کنید:full_name = “Your first name is: “ + first_name + ”. Your last name is: “ + last_nameتغییرات رو ذخیره و برنامه رو اجرا کنید.البته از یه راه دیگه‌ای هم میشه خروجی مشابهی تولید کرد و اون استفاده از تابع format هستش.تابع format() - ورژن قدیمیبا یک مثال می تونیم طرز کار این تابع رو متوجه بشیم.full_name = “Your first name is: {}. Your last name is: {}”.format(fist_name,last_name)توضیح:در مثال بالا مقدار نهایی full_name همون مقدار قبلی هستش ولی خب یه جور دیگه تعریف شده. همون‌طور که می‌بینید داخل نقل‌قول‌ها بعد از عبارت “Your ..” یه جفت آکلاد {} اومده و در آخر رشته هم دوباره آکلاد اومده. بعد از پایان رشته علامت نقطه . اومده به همراه تابع format که داخل اون تابع دو تا متغیر به نام های first_name و last_name اومده. حالا این تابع چیکار می کنه؟این تابع به ترتیب به جای {} ها مقادیر fist_name و last_name رو قرار میده و اگه برنامه رو اجرا کنید. همون خروجی قبلی رو می بینید.نکته:این نسخه از تعریف تابع format ویژه ورژن‌های قدیمی پایتون هستش. در نسخه‌های جدید پایتون یه نوع دیگه هم از این تابع داریم که میشه اونو استفاده کرد. البته در نسخه‌های جدیدتر هم این تابع قدیمی کار می‌کنه.تابع format() - ورژن جدیداجازه بدین که مثال قبلی رو با استفاده از نوع جدید این تابع بازنویسی کنیم.full_name = f“Your first name is: {first_name}. Your last name is: {last_name}”ایجاد فاصله در رشته‌هاگاهی اوقات ما تصمیم می‌گیریم که برای خوانایی نوشته‌هامون تو خروجی بین اونا فاصله ایجاد کنیم. اونم نه یکی بلکه چندتا!و یا بعضی از اوقات ادامه‌ی رشته‌هامون از سطر جدیدی شروع بشن. در اینجا ما در رشته‌ها از یه سری کاراکترهای مخصوصی استفاده می‌کنیم که اصطلاحا بهشون escape میگن و با یه فرمت خاصی توی خروجی نشون داده میشن. در این مقاله قصد داریم که دو تا از اونها رو معرفی کنیم:خط جدید – n\فاصله تب – t\کاراکترهای escape با \ یا بک اسلش شروع میشن و بعد از اونا یه حرفی میاد که نشون دهنده یه کاربرد خاصیه. ترجیح میدم که یه مثال رو اجرا کنید و خروجی رو با دقت بررسی کنید و متوجه بشین.message = ‘Your name:Ali\tYour Last name: Ahmadi\nHow are you?’
print(message)در نگاه اول شاید رشته‌تون یه جوری باشه و اصطلاحا بهم ریخته به نظر بیاد. اما بهتره که اونو اجرا کنید و خروجی رو بررسی کنید.در ادامه متوجه میشین که در خروجی به جای t\ به اندازه ۴ تا فاصله یا یه تب داریم. و بعد از اون هم بعد از n\ ادامه‌ی رشته از خط جدید شروع شده.با رشته‌ها کارای زیادی میشه انجام داد. برای این منظور توابع مختلفی هم برای کار با اونا ایجاد شده‌اند که البته توی این مقاله به اونا نپرداختیم و صرفا یه آشنایی کلی با رشته‌ها بدست آوردیم. اما حیفم اومد این تابع پرکاربردی رو نگم و اون حذف فاصله‌هاست.حذف فاصله در رشته‌هادر دنیای برنامه‌نویسی رشته با فضای خالی و فاصله با رشته‌ها بدون فاصله تفاوت داره. مثلا فرض کنید یه فرم ثبت‌نام قراره پردازش بشه و کاربر در انتهای فیلد بعد از وارد کردن یوزرنیم یه فاصله هم ایجاد میشه. تو این مواقع ما نیاز داریم که فاصله‌های اضافی اول یا آخر یه رشته رو حذف کنیم. از این رو از تابع strip استفاده می‌کنیم. مثال:user_name = ‘ Ali ‘
print(user_name.strip())این قسمت از مقاله هم به پایان رسید. اگرچه برای کار با رشته‌ها توابع و متعدد زیادی تعریف شده که اگه مایل باشین می‌تونین با یه جستجو تو اینترنت نحوه‌ی استفاده از اونا رو یاد بگیرین. امیدوارم که این قسمت هم براتون مفید بوده باشه.منبع: آموزش پایتون به زبان ساده: رشته‌ها - وبسایت شخصی محمدحسین میثاق‌پور</description>
                <category>آموزش پایتون به زبان ساده</category>
                <author>محمدحسین میثاق‌پور</author>
                <pubDate>Fri, 10 Apr 2020 15:39:44 +0430</pubDate>
            </item>
                    <item>
                <title>آموزش پایتون به زبان ساده: توضیحات</title>
                <link>https://virgool.io/python-learning/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D9%BE%D8%A7%DB%8C%D8%AA%D9%88%D9%86-%D8%A8%D9%87-%D8%B2%D8%A8%D8%A7%D9%86-%D8%B3%D8%A7%D8%AF%D9%87-%D8%AA%D9%88%D8%B6%DB%8C%D8%AD%D8%A7%D8%AA-wxp4rifcc2sr</link>
                <description>یکی از موضوعاتی که تقریبا در همه زبان‌های برنامه‌نویسی وجود داره کامنت‌ها یا توضیحات هستند اگرچه در بعضی زبان‌ها شیوه‌ی به کارگیری‌شون متفاوته، اما کابردشون یکیه. تو این قسمت قصد داریم تا به موضوع توضیحات یا کامنت‌ها در زبان پایتون بپردازیم. این که اصلا کاربرد اونا چیه و چه جوری تعریف میشن.کامنت (Comment) چیه؟توضیحات قسمتی از کدهای ما هستند که توسط کامپیوتر اجرا نمیشن و به عبارتی اونها نادیده گرفته میشن و هر چیزی می تونه باشه و در استفاده از اونا محدودیتی وجود نداره. خب یه سوال اگه قراره که این قسمت از کدها توسط برنامه اجرا نشن پس چه به دردی میخوره؟ علت استفاده از اونا رو در ادامه میگم.کاربردهای توضیحات در برنامه‌نویسیکدنویسی تمیز (Clean Code)درسته که کامپیوتر کدها رو اجرا می کنه، اما یه مساله‌ی دیگه‌ای که هست اینه که این کدها توسط برنامه‌نویسان و عوامل انسانی خونده میشن. پس لازمه که در بخش‌هایی از برنامه یه سری توضیحاتی رو بنویسیم که مثلا فلان بخش چه کاری رو انجام میده. کاربردش زمانی مشخص میشه که بعد از چند ماه دوباره سراغ اون کد میریم و متوجه میشیم که اینجای برنامه چیکار می‌کنه. همچنین توی کارهای گروهی خوندن برنامه ما توسط برنامه‌نویسای دیگه راحت‌تر میشه و اینجاست که مباحثی مثل کدنویسی تمیز یا Clean Code توی پروژه‌ها اهمیت پیدا می‌کنه و این موضوع هم به نفع شماست هم برنامه نویسای دیگه!باگ‌یابی و رفع اشکال (Debugging)یکی از دیگه از کاربردهای کامنت در بحث باگ‌یابی یا رفع اشکال کد هستش. در آینده پروژه‌های شما بزرگ میشن و خب طبیعتا به وجود اومدن مشکلات یه امر طبیعی هستش. در اون مواقع شما میخواین از عملکرد درست یه سری خط‌ها مطمئن بشین اینجاس که می‌تونید یه بخشی از کدهاتون رو به کامنت تبدیل کنید به این معنی که برنامه اون قسمت رو اجرا نکنه تا اینجوری شاید بتونید سریع‌تر مشکل‌تون رو رفع کنید.خب حالا که فهمیدین توضیحات یا کامنت‌ها (Comments) چی هستند و چه کاربردی دارند اجازه بدین که با یه مثال توی پایتون این موضوع رو بررسی کنیم. مثال زیر رو در نظر بگیرین.# print welcome function
print(‘hello world’)در مثال بالا خط اول با یه علامت # شروع شده و این علامت نشون‌دهنده‌ی اینه که از اینجا تا آخر خط یه توضیح هستش و کامپیوتر اونو نادیده می گیره و اجرا نمی‌کنه اما همون‌طور که گفتم این کار به ما کمک می‌کنه که بفهمیم این قسمت از کد چیکار می‌کنه.چند تا نکته:لازم نیست که کامنت‌ها حتما از اول خط شروع بشن، بلکه می‌تونند در وسط خط هم تعریف بشن. اما دقت کنید هرجا علامت # اومد این یعنی هرچیزی که نوشته شده رو تا آخر خط کامنت در نظر بگیر مثل مثال زیر:print(‘hello world’) # print welcome functionنکته‌ی دیگه اینکه این نوع از کامنت‌ها تک‌خطی هستند و اگه مجبور شدین ادامه توضیحات رو در خط بعد بنویسین، باید برای هر خط به طور جداگانه علامت # قرار بدین. مثال زیر اشتباهه:# hello world
how are you?
print(‘hello world’)و باید مثلا این طوری اصلاح بشه:# hello world
# world functionکامنت‌های چندخطیکامنت‌های چندخطی رو یه جور راحت‌تر دیگه هم میشه تعریف کرد و اونجوری مجبور نیستیم که برای هر خط، # بذارین.به این صورت که کامنت‌های خودتون چه یه خط چه صد خط! بین ۳ تا علامت نقل‌قول قرار بگیرن. هم علامت نقل‌قولی تکی میتونه هم دوتایی مثال:”’
hello world
how are you?
”’
print(“Hello world”)جمع بندیتو این قسمت با کامنت‌ها یا توضیحات آشنا شدیم و خلاصه‌ی کلام اینکه کامنت‌ها اجباری نیستند و اختیاری‌اند. اما از من می‌شنوید عادت‌کردن به کامنت نویسی یه امر مستحبیه! علی الخصوص توی پروژه‌ها که میشه گفت یه کار مستحب اکیده!چه جالب یه خورده هم اصطلاحات فقهی به کار بردیم همش که نمیشه این عبارات خارجکی رو به کار ببریم. اینجوری یه تنوعی هم ایجاد میشه.این قسمت از آموزش هم به پایان رسید. امیدوارم که از این مقاله هم لذت برده باشین.منبع: آموزش پایتون به زبان ساده: توضیحات - وبسایت شخصی محمدحسین میثاق‌پور</description>
                <category>آموزش پایتون به زبان ساده</category>
                <author>محمدحسین میثاق‌پور</author>
                <pubDate>Fri, 10 Apr 2020 12:51:30 +0430</pubDate>
            </item>
                    <item>
                <title>آموزش پایتون به زبان ساده: متغیرها</title>
                <link>https://virgool.io/python-learning/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D9%BE%D8%A7%DB%8C%D8%AA%D9%88%D9%86-%D8%A8%D9%87-%D8%B2%D8%A8%D8%A7%D9%86-%D8%B3%D8%A7%D8%AF%D9%87-%D9%85%D8%AA%D8%BA%DB%8C%D8%B1%D9%87%D8%A7-kxk6gszi1hxf</link>
                <description>یکی از اجزای پایه‌ای و مشترک در زبان‌های برنامه‌نویسی متغیرها هستند. در واقع ما برای راحتی کارمون برای داده‌های مختلف یه سری نام‌هایی رو انتخاب می‌کنیم و با اونا کار می‌کنیم. اجازه بدین برای اینکه مفهوم رو توضیح بدم یه مثال بزنم.ما توی واقعی با اشیاء زیادی سر و کار داریم و برای هر کدوم یه نامی رو در نظر گرفته‌ایم. مثلا ما به یه وسیله‌ای که چهارتا پایه داره و یه تخته بزرگ میگیم: میز و در مکالمات‌مون هم وقتی می‌گیم میز یعنی اون وسیله‌ای که چهار تا پایه داره و یه تخته و برای اینکه بخوایم به اونا اشاره کنیم نمیایم اونا رو تعریف کنیم و فقط کافیه که اسمشون رو ببریم. خب همون‌طور که می‌دونید این نام‌گذاری‌ها قراردادی‌اند مثلا همین کلمه میز رو انگلیسی‌ها بهش میگن table.متغیر چیه؟توی برنامه‌نویسی هم به جای اینکه بخوایم از خود داده‌ها استفاده کنیم، یه متغیرها یا برچسب‌هایی رو براشون تعریف می‌کنیم و در طول برنامه از اونا استفاده می‌کنیم.اجازه بدین این موضوع رو با یه مثال توضیح بدم. بیاین همون برنامه hello world رو یه بار دیگه بررسی کنیم.print(‘hello world’)این برنامه رو به این صورت هم میشه نوشت:message = ‘hello world’
print(message)توضیح:تو این تکه کد بالا ابتدا یه متغیر تعریف کردیم و عبارت ‘hello world’ رو بهش مقدار دادیم.در خط بعدی فقط کافیه که اسم اون متغیر رو چاپ کنیم. و نکته‌ای که اینجا هستش اگه خروجی رو ببینید، مقدار پیام رو نشون میده یعنی hello world نه عبارت message رو.میشه درباره کار با متغیرها بیشتر توضیح بدی؟خب حالا بیاین یه خورده با جزییات بیشتری متغیرها رو بررسی کنیم.در ابتدای هر خط ابتدا باید یه اسمی رو برای متغیری در نظر بگیریم که البته برای نام‌گذاری متغیرها یه سری قوانین وجود داره که در ادامه بهش می پردازیم. برای مثال ما اینجا message رو در نظر گرفته‌ایم.بعد از اون کاراکتر  = میاد که به معنی انتساب هستش یعنی قراره یه مقداری رو به یه متغیری انتساب بدیم.بعد از = یه داده‌ای باید نوشته بشه. داده‌های مختلفی با انواع متفاوتی تو پایتون وجود داره مثل متنی، عددی، لیست‌ها، بولین و… که توی این مقاله قصد نداریم به توضیح دقیق اونا بپردازیم و در قسمت‌های بعد اونا رو توضیح میدیم فقط بدونید تا اینجای کار یه قاعده‌ی مشترکی وجود داره.توی این مثال بالا ما با یه داده متنی یا رشته string کار می‌کنیم. مثلا برای تعریف و کارکردن رشته‌ها یه قانون وجود داره و اون اینه که رشته‌ها حتما باید بین دو تا علامت نقل‌قول “ یا ‘ قرار بگیرند مثل عبارت بالا ‘hello world’.چند اصل در نام‌گذاری متغیرهاخب حالا بیاین یه سری قوانین در نام‌گذاری رشته‌ها رو با هم بررسی کنیم:متغیرهای شما حتما باید با یه حرف الفبا یا _ شروع بشه و نمی تونه به غیر از اینا مثلا با یه عدد شروع بشه.مثلا مثال زیر اشتباهه:1message = ‘hello’اما این عبارت درسته:message1 = ‘hello’متغیرها حساس به متن هستند یعنی به حروف کوچک و بزرگ انگلیسی حساس‌اند. مثلا متغیر name با Name تفاوت داره.در نام‌گذاری متغیرها فاصله مجاز نیست مثلا کد زیر اشتباه هستش:my message = ‘hello world’بهتره که این کد رو بدون فاصله بنویسیمmy_message = ‘hello world’همون طور که از نام متغیر پیداست یعنی چیزی که قابل تغییر هستش. برای اینکه این موضوع روشن بشه تکه کد زیر رو بنویسید و اونو اجرا کنید. اگه هنوز کدی اجرا نکردین می تونید مقاله … رو بخونین.message = ‘hello’
print(message)
message = ‘hello world’
print(message)توضیح: تو خط اول یه متغیر با نام message تعریف کردیم و مقدار ‘hello’ رو بهش انتساب دادیم.در خط بعدی مقدار این متغیر تو خروجی یا صفحه مانیتور نشون داده میشه.در خط سوم همون متغیری که قبلا تعریف کردیم رو مقدارش رو عوض کردیم و در خط بعد دوباره ازش یه خروجی گرفتیم.به عبارتی اگه اون یه نامی رو برای اولین بار برای یه متغیر تو برنامه استفاده کنیم و اونو مقدار بدیم، یعنی یه متغیر جدید تعریف کردیم اما اگه چند خط بعد یه متغیری که قبلا با یه نام خاص تعریف شده و مقدار داده شده رو دوباره مقدار بدیم، این یعنی ما مقدار اونو تغییر دادیم یا اصطلاحا بروزرسانی یا update کرده ایم.تو مقالات بعد به تفصیل درباره انواع داده‌ها توی پایتون صحبت می‌کنیم و کار با اونا رو یاد می‌گیریم. امیدوارم که از این مقاله لذت برده باشین.منبع: آموزش پایتون به زبان ساده: متغیرها - وبسایت شخصی محمدحسین میثاق‌پور</description>
                <category>آموزش پایتون به زبان ساده</category>
                <author>محمدحسین میثاق‌پور</author>
                <pubDate>Fri, 10 Apr 2020 12:43:34 +0430</pubDate>
            </item>
                    <item>
                <title>آموزش پایتون به زبان ساده: نصب و راه‌اندازی</title>
                <link>https://virgool.io/python-learning/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D9%BE%D8%A7%DB%8C%D8%AA%D9%88%D9%86-%D8%A8%D9%87-%D8%B2%D8%A8%D8%A7%D9%86-%D8%B3%D8%A7%D8%AF%D9%87-%D9%86%D8%B5%D8%A8-%D9%88-%D8%B1%D8%A7%D9%87%D8%A7%D9%86%D8%AF%D8%A7%D8%B2%DB%8C-g6kbh5serfq8</link>
                <description>تو این قسمت میخوایم محیط کار و ابزارهای مورد نیاز خودمون رو تهیه کنیم. همون‌طور که می‌دونید برنامه‌نویسی یه حرفه و شغل محسوب میشه و خب مثل بقیه شغل‌ها نیاز به یه سری ابزارهایی داره. همون‌طور که یه نجار یا مکانیک یه سری آچارها و ابزارهایی داره طبیعتا یه برنامه‌نویس هم در شروع کار باید ابزارهای خودش رو تهیه کنه.یه خبر خوش! این ابزارها در واقع برای برنامه‌نویسان همون محیط‌های ویرایشگر کد میشه. قاعدتا باید ابزارها و محیط‌های زیادی برای برنامه‌نویسی پایتون توی وب موجود باشه. از ساده گرفته تا پیچیده. اما ما قصد داریم که برای اهداف آموزشی خودمون با یه ابزار نسبتا ساده و کاربردی که از مرجع اصلی خود پایتون هست کار کنیم.برای این منظور بهتره که به سایت python.org مراجعه کنید و به بخش دانلود اون برین و با توجه به سیستم عاملتون، یکی‌شون رو دانلود کنید. از اونجایی که اکثر کاربران ویندوزی هستند من نسخه‌ی ویندوزی‌اش رو دانلود و نصب کردم. اسم این ابزار به انگلیسی IDLE هستش این کلمه مخفف عبارت “Integrated DeveLopment Envoronment” هستش یعنی محیط توسعه یکپارچه.حالا این ابزار چی هستش؟به بیان دیگه برنامه‌نویسان نیاز به یه سری ابزار و محیط دارند تا بتونند کدهاشون رو بزنن. اونها رو اجرا و باگ‌یابی کنند و خلاصه برنامه‌های خودشون رو مدیریت کنند که البته تو زبان‌های دیگه IDE گفته میشه اما توی پایتون IDLE.خب بعد از دانلود این نرم‌افزار شما باید اونو نصب کنید که توی ویندوز خیلی ساده است شبیه همون برنامه‌هایی که شامل چند تا next و finish هستش.تو این محیط شما میتونید به دو طریق باهاش کار کنید:یکی اینکه به صورت لحظه‌ای کدهاتون رو خط به خط توش وارد کنید و نتیجه رو ببینید. یعنی خط به خط کدهاتون رو وارد کنید و اینتر بزنید و نتیجه رو ببینید. اما این روش در بعضی موارد جالب نیست. مثلا اگه برنامه رو ببندید دیگه کدهاتون از بین می بره و برای دفعه بعد مجبورین که دوباره اونا رو تایپ و اجرا کنید. خب پس چه روشی خوبه؟روش مناسب‌تر اینه که ما کدهای خودمون رو داخل یه فایل که با پسوند py هستش ذخیره کنیم و اونا رو اجرا کنیم.برای این منظور می‌تونید با استفاده از مسیر زیر یه فایل ایجاد کنید.File -&gt; New Fileبعد از اون یه پنجره‌ی جدید براتون باز میشه که می‌تونید کدهاتون رو وارد کنید و اجرا کنید.خب بیاین دست به کیبرد بشین و اولین برنامه رو بنویسیم. برنامه‌ای که میان برنامه‌نویسان خیلی مشهوره.سلام جهان – hello worldاین دستورات رو توی محیط ویرایشگر متنی بنویسید.print(‘hello world’)فایل‌تون رو ذخیره کنید. برای این منظور می‌تونید از مسیر زیر یا با استفاده از میانبر ctrl + s فایل‌تون رو ذخیره کنید.File -&gt; Saveبعد از اون برنامه نوبت به اجرای برنامه‌تون میرسه. برای این کار با استفاده از میانبر F5 یا از طریق مسیر زیر اونو اجرا کنید.Run -&gt; Run Moduleحالا می‌تونید در محیط python shell نتیجه برنامه‌تون رو ببینید که شامل خروجی زیره:hello worldتبریک! شما اولین برنامه خودتون به زبان پایتون رو نوشتین و با موفقیت اونو اجرا کردین. به دنیای برنامه‌نویسی خوش اومدین.این ساده‌ترین برنامه‌ای هستش که اکثر برنامه‌نویسان در اولین برنامه‌هاشون می‌نویسند. در ادامه قراره که آموزش‌های پیچیده‌تری از این زبان رو یاد بگیرین و امکانات پیشرفته‌تری از این زبان رو یاد بگیرین و با دونستن اونا برنامه‌های کاربردی زیادی بنویسین.نگران نباشید ما به تدریج و اصطلاحا “لقمه لقمه” این مباحث رو پیش می بریم.امیدوارم که از مطالعه این قسمت لذت برده باشین.منبع: آموزش پایتون به زبان ساده: نصب و راه‌اندازی - وبسایت شخصی محمدحسین میثاق‌پور</description>
                <category>آموزش پایتون به زبان ساده</category>
                <author>محمدحسین میثاق‌پور</author>
                <pubDate>Fri, 10 Apr 2020 12:34:52 +0430</pubDate>
            </item>
                    <item>
                <title>آموزش پایتون به زبان ساده: مقدمه</title>
                <link>https://virgool.io/python-learning/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D9%BE%D8%A7%DB%8C%D8%AA%D9%88%D9%86-%D8%A8%D9%87-%D8%B2%D8%A8%D8%A7%D9%86-%D8%B3%D8%A7%D8%AF%D9%87-%D9%85%D9%82%D8%AF%D9%85%D9%87-wkcnwcfax9xo</link>
                <description>سلام خدمت بازدیدکنندگان عزیز. من محمدحسین میثاق‌پور قصد دارم تا در سلسله مقالاتی، برنامه‌نویسی پایتون رو به زبان ساده آموزش بدم. امیدوارم که این مقالات براتون مفید بوده باشه و نکات ارزشمندی رو از اونا یاد بگیرید. خب قبل از هر چیزی بیاین به این سوال پاسخ بدیم که چرا زبان پایتون رو برای شروع برنامه‌نویسی انتخاب کردیم؟ راستش علت‌های مختلفی می‌تونه داشته باشه که در ادامه به اون می‌پردازیم:کدنویسی آسانیکی از ویژگی‌های زبان برنامه‌نویسی پایتون کدزنی راحت‌تر نسبت به بقیه زبان‌های برنامه‌نویسیه. سینتکس این زبان خیلی شبیه زبان محاوره‌ای انگلیسی هستش از از این روز دنبال کردن کدها خیلی سریع‌تر و بهتر انجام میشه.همچنین یکی دیگه از مزایای سینتکس این زبان اینه که شما می‌تونید با تعداد خط‌های کمتر همون نتیجه‌ای که از زبان‌های دیگه داشتین رو بدست بیارین.جامعه آماری نسبتا بالایکی از ویژگی‌های مثبت دیگه‌ای که این زبان داره جامعه آماری نسبتا بالاش هستش. شرکت‌های خفن زیادی مثل گوگل روی این زبان سرمایه‌گذاری کردند و برخی از پروژه هاشون رو به کمک این زبان پیاده‌سازی کردند. جامعه آماری بالا این امکان رو به شما میده که اگه در زمان برنامه‌نویسی به مشکلی برخوردین خیلی راحت بتونید اونها رو با یه جستجوی ساده تو گوگل برطرف کنید.کاربردهای متنوعاز دیگر مزیت‌های این زبان اینه که کاربردهای زیادی تو زمینه‌های مختلفی داره از جمله:برنامه‌نویسی موبایلبرنامه‌نویسی وببازی‌سازیمدیریت سیستم‌های پایگاه دادهکار با محاسبات سنگین ریاضی و داده‌های حجیمو…راستش برای معرفی این زبان و اطلاعات دیگه‌ای مثل تاریخچه و مخترع و… میشه تا دلتون بخواد کتاب و مقاله توی اینترنت پیدا کرد اما بنظرم همین اطلاعات برامون کافیه و بهتره که وقت رو تلف نکنیم و آموزش رو شروع کنیم.منبع: آموزش پایتون به زبان ساده: مقدمه - وبسایت شخصی محمدحسین میثاق‌پور</description>
                <category>آموزش پایتون به زبان ساده</category>
                <author>محمدحسین میثاق‌پور</author>
                <pubDate>Fri, 10 Apr 2020 12:22:40 +0430</pubDate>
            </item>
            </channel>
</rss>