نامپای یا numpy یک کتابخانه پایتون است که برای کار با آرایهها به وجود آمده است. کتابخانه numpy همچنین توابعی برای انجام عملیاتهای گوناگون در جبر خطی، تبدیل فوریه و ماتریسها دارد. نامپای در سال ۲۰۰۵ توسط تراویس الیفانت (Travis Oliphant) و به صورت یک پروژه متن باز (open source) ایجاد شد. Numpy سرواژهی عبارت Numerical Python به معنای پایتون عددی یا پایتون محاسباتی است.
چرا باید از numpy استفاده کنیم؟
در پایتون چیزی به عنوان آرایه وجود ندارد؛ با این حال میتوان از لیست (list) به عنوان آرایه استفاده کرد. مشکل لیست آن است که سرعت پردازش دادهها در آن بسیار پایین است. Numpy تلاش دارد شیئی را به عنوان آرایه ارائه دهد که ۵۰ برابر از لیست سریعتر است. شیئی که به عنوان آرایه در numpy موجود است، ndarray نام دارد. نامپای توابع زیادی دارد که کار با ndarray را بسیار راحت کردهاند. توجه داشته باشید که با توجه به استفادهی گسترده از آرایهها در علوم داده و با توجه به حجیم بودن دادهها، سرعت مقولهی بسیار مهمی برای ماست.
چرا کتابخانه numpy از لیست سریعتر است؟
کتابخانه نامپای، دادههای موجود در آرایه را در خانههایی پشت سر هم از حافظه ذخیره میکند؛ در مقابل، ذخیرهسازی دادهها در لیست این گونه نیست؛ در واقع لیست، هر یک از آیتمها را در محلی ذخیره میکند و آیتمهای مختلف موجود در لیست، الزاما در خانههای پشت سر هم حافظه قرار ندارند. بنابراین، پردازنده میتواند به دادههای موجود در آرایهی ساختهشده به وسیلهی numpy، به سرعت دست یابد و به طور بهینه، عملیاتهای مورد نیاز را انجام دهد. در علوم کامپیوتر، به چنین رفتاری مرجع محلی یا locality of reference گفته میشود. مطلبی که بیان شد، علت اصلی سریعتر بودن numpy از لیست در پایتون است؛ علل دیگری هم وجود دارند؛ به عنوان مثال، کتابخانه numpy به گونهای ساخته شده است که برای کار با آخرین معماری پردازندههای مدرن، بهینه باشد.
کتابخانه نامپای با استفاده از چه زبانی نوشته شده است؟
کتابخانه numpy یک کتابخانه برای زبان پایتون است و بخشهای از آن نیز به این زبان نوشته شده است؛ اما قسمتهای زیادی که نیاز به پردازش سریع دارند، با استفاده از زبانهای سطح پایین و پرسرعت C و ++C نوشته شدهاند.
سورس کد numpy کجا قرار دارد؟
همان طور که اشاره شد، نامپای به شکل اپن سورس و کاملا رایگان در اختیار همگان قرار دارد. از طریق ریپازیتوری گیت هاب نامپای، میتوانید به سورس کد آن دسترسی داشته باشید.
نصب کتابخانه numpy پایتون
اگر پایتون و PIP را بر روی سیستم خود نصب کرده باشید، نصب numpy به سادگی امکانپذیر است. کافی است در محیط خط فرمان (Cmd یا powershell در ویندوز یا ترمینال در لینوکس)، دستور زیر را تایپ کنید:
1 |
C:\Users\Your Name>pip install numpy |
وارد کردن numpy به کد پایتون
پس از نصب نامپای، میتوانید آن را به راحتی و با استفاده از کیورد import وارد اپلیکیشن پایتون خود کنید.
1 |
import numpy |
حال نامپای وارد محیط برنامه شده و آمادهی استفاده است. تکه کد زیر، یک برنامه ساده با استفاده از numpy است. در این برنامه یک آرایه میسازیم و آن را چاپ میکنیم.
1 2 3 4 5 |
import numpy arr = numpy.array([1, 2, 3, 4, 5]) print(arr) |
وارد کردن numpy به کد پایتون با استفاده از اسم جایگزین np
در برنامههایی که در آنها به کرّات از کتابخانه نامپای استفاده میشود، به جای آن که هر دفعه واژه numpy را برای دسترسی به کتابخانه استفاده کنیم، میتوان از واژه جایگزین دیگری مانند np که کوتاهتر است استفاده نمود. فقط توجه داشته باشید که برای انجام این کار نیاز به اجرای کد زیر دارید:
1 |
import numpy as np |
به عنوان مثال همان برنامه بالا را میتوان به این شکل بازنویسی کرد:
1 2 3 4 5 |
import numpy as np arr = np.array([1, 2, 3, 4, 5]) print(arr) |
چک کردن ورژن numpy
برای اطلاع از ورژن کتابخانه نامپای که بر روی سیستم شما نصب شده است، میتوانید از کد زیر استفاده کنید:
1 2 3 |
import numpy as np print(np.__version__) |