بدون شک، زبان پایتون یکی از زبانهای برنامهنویسی قدرتمند حال حاضر صنعت توسعه نرمافزار است و شاهد این ادعا هم شرکتها و سازمان بزرگی همچون گوگل، ناسا و … هستند که برای توسعه اپلیکیشنهای خود از این زبان استفاده میکنند. به نوعی میتوان گفت که قدرت زبان پایتون در اکوسیستم این زبان خلاصه میشود به طوری که جامعه توسعهدهندگان، مستندات، پروپوزالهای بهبود این زبان و مهمتر از همه ابزارهای جانبی همچون PyPI هستند که این زبان را قدرتمند کردهاند.
Python Package Index یا به اختصار PyPI، شامل دهها هزار پکیج مختلف است که برای هر توسعهدهندهای و هر نوع پروژهای فارغ از ماهیت آن، در نهایت یک پکیج مناسب در آن میان یافت خواهد شد که مورد استفاده قرار گیرد.
PyPI همچون سایر ریپازیتوریهای اپنسورس، حاوی برخی پکیجهایی است که اصطلاحاً Depricated شدهاند (یعنی دیگر نباید آنها را مورد استفاده قرار داد) و همچنین پکیجهایی که برای کارهای بهخصوصی نوشته شدهاند اما PyPI در یک کلام زندگی دولوپرهای پایتون را خیلی ساده و لذتبخش کرده و سرعت توسعه پروژههای نرمافزاری با این زبان را به طور قابلتوجهی بهبود بخشیده است.
نکته PyPI : (پای¬پ) یا مخزن بستههای پایتون (Python Package Index) محلی است که بسیاری از کتابخانهها یا برنامههای شخص ثالث پایتون در آن نگه داری میشود. کاربران پایتون میتوانند از طریق PyPI پروژه (یا بسته) خود را منتشر یا اقدام به جستجو و دانلود بستههای مورد نیاز خود نمایند.
PyPI چیست؟!
بسیاری از ماژولهای third-party یا شخص ثالث پایتون که توسط اشخاص دیگری نوشته شدهاند، در Python Package Index یا به اختصار PyPI ذخیره شدهاند. که بهترین شیوه برای دسترسی به آنها، نصب نرمافزاری به نام pip است.
این نرمافزار در نسخههای جدید پایتون، به صورت پیشفرض نصب میشود و برای اینکه بدانید نصب است یا خیر، داخل CMD شده و pip را بنوسید و سپس و Enter بزنید؛ اگر لیست دستوراتی به شما نمایش داده شد، یعنی نصب شده است.
روش استفاده از pip خیلی آسان بوده و تنها کافیست از دستور:
pip install library_name
در پایتون استفاده کرده و به جای library_name، نام کتابخانه را بنویسید. البته توجه داشته باشید که کتابخانه از اینترنت دریافت خواهد شد؛ چون PyPI یک سرویس آنلاین است.
گرچه استفاده از pip، روش استاندارد نصب کتابخانهها است، با این حال برخی از کتابخانهها، روشهای دیگری را از جمله setup اختصاصی برای نصب خود در اختیار برنامهنویسان قرار میدهند؛ که برای هر کتابخانه نیز ممکن است متفاوت با کتابخانههای دیگر باشد.
مفهوم کتابخانه در پایتون – Library On Python
شاید مفهوم کتابخانه و معنی آن کمی پیچیده به نظر برسد. ولی در حقیقت کتابخانه مجموعه ای از ماژول هاست. کتابخانه یا شامل ماژول هایی است که یا زبان C و یا با زبان Python نوشته شده اند. پس بهتر است ابتدا به تعریف ماژول بپردازیم.
به مجموعه ای از قطعه کدهای استاندارد یا بسته های مستقل که میتوانند برای ساخت یک ساختار پیچیدهتر مورد استفاده قرار گیرند ماژول میگویند. به زبان سادهتر، ماژول مجموعهای از خطوط کد است که برای یک هدف خاص استفاده میشود و میتواند در برنامه های متعددی از آن استفاده شود که این کار باعث پرهیز از تکرار میشود که در برنامه نویسی بسیار مهم است.
به عنوان مثال: همانطور که میدانید چرخ در حال حاضر اختراع شده است، بنابراین کسی که در حال اختراع و یا ساخت ماشین است، زمان خود را صرف ساخت مجدد چرخ نمیکند، بنابراین، چرخ یک ماژول است (میتواند در سایر اختراعات و ساختههای متفاوتی استفاده شود).
ماژول ها یا کتابخانه هایی که در python نوشته میشوند را میتوان در ۳ قالب زیر دسته بندی کرد:
• کتابخانه هایی که توسط شما ایجاد شدهاند.
• کتابخانه هایی که توسط دیگران یا منبع خارجی ایجاد شده مانند PyPI.
• کتابخانه هایی که به صورت پیش فرض به همراه پایتون نصب شدهاند.
در ادامه به معرفی ۲۰ کتابخانه محبوب و معروف پایتون (Python libraries list) را به اختصار معرفی میکنیم توجه کنید:
۱- Requests: معروفترین کتابخانه در زمینه http که توسط kenneth reitz نوشته شده است. یادگیری این کتابخانه به همه علاقه مندان پایتون توصیه میگردد.
۲- Scrapy: اگر شما مشغول برنامه نویسی وب هستید استفاده از این کتابخانه را فراموش نکنید. مطمئنا بعد از استفاده از آن نمیتوانید از کتابخانه دیگری استفاده کنید.
۳- wxPython: ابزاری برای کار با gui است. یکی از جایگزینهای بسیار مناسب tkinter.
4- Pillow: یک کتابخانه کمکی بر روی PIL (Python Imaging Library) که بسیار User Friendly تر از PIL است. برای برنامه نویسانی که با تصاویر کار میکنند شدیدا توصیه میشود.
۵- SQLAlchemy: کتابخانهای برای کار با دیتابیس های گوناگون.
۶- BeautifulSoup: این کتابخانه در زمینه html و xml کاربرد دارد خصوصا برای افراد مبتدی. که البته کمی کند است.
۷- Twisted: مهمترین ابزار برای هر برنامه نویس برنامه های حوزه شبکه. شامل api بسیار زیبایی است و توسط بسیاری از برنامه نویسان معروف پایتون استفاده میشود.
۸- NumPy: ارائه دهنده ویژگی های پیشرفته ریاضی در پایتون که بناید فراموشش کنید.
۹- SciPy: کتابخانه ای از الگوریتم ها و ابزارهای پیشرفته ریاضی برای پایتون است که بسیاری از دانشمندان را مجبور به مهاجرات از زبان روبی به پایتون کرده است.
۱۰- matplotlib: یک کتابخانه ترسیم عددی. برای دانشمند حوزه اطلاعات و یا هرگونه تجزیه و تحلیل داده ها بسیار مفید است.
۱۱- Pygame: آیا شما برنامه نویسی را میشناسید که بازی کردن و تولید بازی علاقه نداشته باشد؟ این کتابخانه به شما در دستیابی به هدف شما در زمینه تولید بازی های 2D کمک خواهد کرد.
۱۲- Pyglet: کتابخانه ای برای ساخت بازی ها و یا انیمیشن های 3D.
13- pyQT: ابزاری برای ساخت GUI در پایتون. این دومین انتخاب بعد از wxpython برای ایجاد GUI برای اسکریپت های پایتون است.
۱۴- pyGtk: کتابخانه دیگری در زمینه GUI. این کتابخانه ای است که برنامه معروف bittorrent با آن ایجاد شده است.
۱۵- Scapy: کتابخانه ای جهت بسته نگاری و تحلیل پکت های شبکه (packet sniffer and analyzer) در پایتون که در پایتون ایجاد شده است.
۱۶- pywin32: یک کتابخانه پایتون که برخی از روشها و کلاسهای مفید را برای تعامل با سیستم عامل ویندوز فراهم میکند.
۱۷- nltk: یا همان Toolkit Natural Language. اکثر مردم از این کتابخانه استفاده نمیکنند، اما به اندازه کافی شناخته شده و عمومی است. اگر میخواهید با رشته ها کار کنید، این کتابخانه بسیار مفید است. اما قابلیتهای بسیار بالاتری دارد که میبایست بررسی گردد.
۱۸- nose: که در حقیقت framework ی برای تست در پایتون است. میلیونها نفر از برنامه نویسان پایتون از آن استفاده میکنند. اگر توسعه شما تست محور است میبایست از این کتابخانه استفاده کنید.
۱۹- SymPy: این کتابخانه میتواند ارزیابی جبری، تمایز، گسترش، اعداد پیچیده و غیره را انجام دهد.
۲۰- IPython: این کتابخانه که شامل پیمایش سریع روی استروئیدها است. تکمیل، تاریخ، قابلیت پوسته، و بسیاری قابلیتهای بیشتر. اطمینان حاصل کنید که به آن نگاه میکنید.
امیدوارم این مقاله را دوست داشته باشید. لطفا نظرات خود در ادامه با ما به اشتراک بگذارید. میتوانید مقالات مربوط به برنامه نویسی را در مقالات مشهد سئو مطالعه کنید.
الان وقتشه!
جهت مشاوره و ساخت طراحی سایت حرفه ای و بهینه سازی سایت و تولید محتوا تماس بگیر
نویسنده
مدیر سایت
حمیده عابدی کارشناس کامپیوتر رشته نرم افزار هستم و مشغول کار در در زمینه طراحی سایت با وردپرس و آشنا به سئو و بهینه سازی سایت، تولید محتوا، برنامه نویسی HTML, CSS هستم.