This media is not supported in your browser
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Fibonacci Sequence
Media is too big
VIEW IN TELEGRAM
پروژه عملي ماشين حساب (قسمت سوم)
اپلیکیشن دیکشنری
نخستین اپلیکیشنی که قرار است در این سری راهنماهای پایتون بنویسیم یک دیکشنری است. این دیکشنری از نوع تعاملی است. شاید این کار به نظر ساده بیاید؛ اما یک سفر هزاران کیلومتری هم از گام نخست آغاز میشود، بنابراین در این نوشته اولین گام خود را برمیداریم. اکنون سؤال این است که این دیکشنری چه کار خواهد کرد؟ دیکشنری ما چنان که انتظار میرود تعریف یک واژه را که کاربر وارد کرده است بازگشت میدهد. علاوه بر آن اگر کاربر هنگام وارد کردن واژههای مورد نظر خود، غلط املایی داشته باشد، برنامه ما نزدیکترین کلمه را با بیان «آیا منظورتان این بود؟» (did you mean this instead) پیشنهاد میکند و اگر واژهای بیش از یک تعریف داشته باشید، همه آنها را بازیابی میکند. شاید ساخت این اپلیکیشن اکنون دیگر به نظرتان ساده نیاید. در هر حال با ما همراه باشید.
توجه کنید که هدف ما در این نوشته آن است که علاوه بر یادگیری روش ساخت اپلیکیشن، با روش کدنویسی نیز آشنا شویم، چون کد تمیز بسیار حائز اهمیت است.
نخستین اپلیکیشنی که قرار است در این سری راهنماهای پایتون بنویسیم یک دیکشنری است. این دیکشنری از نوع تعاملی است. شاید این کار به نظر ساده بیاید؛ اما یک سفر هزاران کیلومتری هم از گام نخست آغاز میشود، بنابراین در این نوشته اولین گام خود را برمیداریم. اکنون سؤال این است که این دیکشنری چه کار خواهد کرد؟ دیکشنری ما چنان که انتظار میرود تعریف یک واژه را که کاربر وارد کرده است بازگشت میدهد. علاوه بر آن اگر کاربر هنگام وارد کردن واژههای مورد نظر خود، غلط املایی داشته باشد، برنامه ما نزدیکترین کلمه را با بیان «آیا منظورتان این بود؟» (did you mean this instead) پیشنهاد میکند و اگر واژهای بیش از یک تعریف داشته باشید، همه آنها را بازیابی میکند. شاید ساخت این اپلیکیشن اکنون دیگر به نظرتان ساده نیاید. در هر حال با ما همراه باشید.
توجه کنید که هدف ما در این نوشته آن است که علاوه بر یادگیری روش ساخت اپلیکیشن، با روش کدنویسی نیز آشنا شویم، چون کد تمیز بسیار حائز اهمیت است.
This media is not supported in your browser
VIEW IN TELEGRAM
دادهها
برای این که بدانید دیکشنری چگونه کار خواهد کرد، باید بدانید که از چه دادههایی برای اجرای اعمال فوقالذکر استفاده میکند. دادهها در این اپلیکیشن در قالب JSON هستند. اگر از قبل JSON را میشناسید، میتوانید چند خط آینده را رد کنید و به ادامه مطالعه این راهنما بپردازید. با این حال اگر نخستین باری است که واژه JSON را میشنوید و یا به کمی یادآوری اطلاعات نیاز دارید، میتوانید در ادامه نمونهای از قالب JSON را ببینید:
برای این که بدانید دیکشنری چگونه کار خواهد کرد، باید بدانید که از چه دادههایی برای اجرای اعمال فوقالذکر استفاده میکند. دادهها در این اپلیکیشن در قالب JSON هستند. اگر از قبل JSON را میشناسید، میتوانید چند خط آینده را رد کنید و به ادامه مطالعه این راهنما بپردازید. با این حال اگر نخستین باری است که واژه JSON را میشنوید و یا به کمی یادآوری اطلاعات نیاز دارید، میتوانید در ادامه نمونهای از قالب JSON را ببینید:
Media is too big
VIEW IN TELEGRAM
Factorial
This media is not supported in your browser
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
_ Decorators.
JSON چیست؟
JSON اختصاری برای عبارت «نمادگذاری شیء جاوا اسکریپت» (JavaScript Object Notation) به طور عمده شامل دو بخش کلید و مقدار است که یک مقدار را به یک کلید انتساب میدهد.
اینک نوبت به بررسی کد رسیده است. ابتدا کتابخانه JSON را ایمپورت میکنیم و سپس از متد load این کتابخانه برای بارگذاری دادههایی که در قالب JSON هستند استفاده خواهیم کرد. نکته مهم آن است که ما دادهها را در قالب JSON بارگذاری میکنیم؛ اما این دادهها در متغیر data در قالب «دیکشنری» پایتون ذخیره میشوند. اگر در مورد نوع داده دیکشنری در پایتون اطلاع ندارید، باید بگوییم که این نوع داده یک قالب برای ذخیرهسازی دادهها است که شباهت زیادی به قالب JSON دارد و از همان حالت «کلید-مقدار» (key-value) پیروی میکند.
JSON اختصاری برای عبارت «نمادگذاری شیء جاوا اسکریپت» (JavaScript Object Notation) به طور عمده شامل دو بخش کلید و مقدار است که یک مقدار را به یک کلید انتساب میدهد.
اینک نوبت به بررسی کد رسیده است. ابتدا کتابخانه JSON را ایمپورت میکنیم و سپس از متد load این کتابخانه برای بارگذاری دادههایی که در قالب JSON هستند استفاده خواهیم کرد. نکته مهم آن است که ما دادهها را در قالب JSON بارگذاری میکنیم؛ اما این دادهها در متغیر data در قالب «دیکشنری» پایتون ذخیره میشوند. اگر در مورد نوع داده دیکشنری در پایتون اطلاع ندارید، باید بگوییم که این نوع داده یک قالب برای ذخیرهسازی دادهها است که شباهت زیادی به قالب JSON دارد و از همان حالت «کلید-مقدار» (key-value) پیروی میکند.
This media is not supported in your browser
VIEW IN TELEGRAM
بررسی کلمات ناموجود
ما میتوانیم با بهرهگیری از یک ساختار if-else به بررسی وضعیت وجود یا عدم وجود کلمات در میان دادههای خود بپردازیم. اگر کلمهای در میان دادهها موجود نباشد، این امر را به کاربر اطلاع میدهیم. در این مورد این کار با نمایش پیام «The word doesn’t exist, please double check it» صورت میگیرد.
ما میتوانیم با بهرهگیری از یک ساختار if-else به بررسی وضعیت وجود یا عدم وجود کلمات در میان دادههای خود بپردازیم. اگر کلمهای در میان دادهها موجود نباشد، این امر را به کاربر اطلاع میدهیم. در این مورد این کار با نمایش پیام «The word doesn’t exist, please double check it» صورت میگیرد.
Media is too big
VIEW IN TELEGRAM
ماشین حساب
Media is too big
VIEW IN TELEGRAM
Special Variable __name
This media is not supported in your browser
VIEW IN TELEGRAM
یادگیری کمدردسر پایتون به برنامهنویسان تازهکار اجازه داده است با صرف کمی وقت اصول اولیه این زبان را یاد بگیرند و اولین برنامه کاربردی خود را با این زبان طراحی کنند. این زبان به گونهای ساخته شده است که ترکیب نحوی آن کاملاً خوانا است و برنامهنویسان بدون مشکل خاصی قادرند منطق دستورات را بهشکل صریح و روشنی درک کنند و برای همکاران خود شرح دهند. سادگی، خوانایی و دور بودن از پیچیدگیهای رایج باعث شده است تا پایتون به گزینه ایدهآلی برای تدریس در مدارس و مراکز آموزشی تبدیل شود. همین سادگی و دور بودن از پیچیدگیها است که باعث شده است پایتون اولین انتخاب برنامهنویسانی باشد که تازه به دنیای برنامهنویسی قدم گذاشتهاند. تسلط بر زبان پایتون بهمعنای آن است که طراحان میتوانند زمان بیشتری را برای فکر کردن درباره یک مشکل و پیدا کردن راه حلی برای آن صرف و در مقابل زمان کمتری برای فکر کردن در مورد ترکیب نحوی و پیچیدگیهای دستورات این زبان صرف کنند.
Media is too big
VIEW IN TELEGRAM
_init__ method
Media is too big
VIEW IN TELEGRAM
GUI-Entry