Skip to content

Tự học Python - Bài 11: Làm quen với thư viện NumPy

Anh Pi
Published date:
Edit this post

Table of contents

Open Table of contents

1. NumPy là gì?

NumPy (viết tắt của Numerical Python) là một thư viện mã nguồn mở cực kỳ mạnh mẽ dùng để làm việc với các mảng (arrays). Nó cũng cung cấp các hàm để làm việc trong lĩnh vực đại số tuyến tính, biến đổi fourier và ma trận.

Trong Python, chúng ta có kiểu dữ liệu List phục vụ mục đích tương đương với mảng, nhưng List xử lý khá chậm. NumPy ra đời nhằm mục đích cung cấp một đối tượng mảng nhanh hơn gấp 50 lần so với mảng truyền thống của Python.

Đối tượng mảng trong NumPy được gọi là ndarray, nó đi kèm với rất nhiều hàm hỗ trợ giúp việc làm việc với ndarray trở nên rất dễ dàng.


2. Tại sao NumPy lại nhanh hơn List?

Mảng NumPy được lưu trữ tại một điểm liên tục trong bộ nhớ không giống như danh sách (List), do đó các quy trình có thể truy cập và thao tác chúng rất hiệu quả.

Hành vi này được gọi là locality of reference trong khoa học máy tính. Đây chính là lý do chính khiến NumPy nhanh hơn danh sách. Ngoài ra, NumPy còn được tối ưu hóa để làm việc với các kiến trúc CPU hiện đại.

Hầu hết lõi của NumPy được viết bằng C hoặc C++, giúp tốc độ thực thi cực kỳ ấn tượng.


3. Cài đặt NumPy

Nếu bạn đã cài đặt Python và PIP trên máy tính, việc cài đặt NumPy rất đơn giản thông qua lệnh:

pip install numpy

Sau khi cài đặt xong, bạn có thể import thư viện này vào code Python của mình bằng cách:

import numpy

Thường thì giới lập trình sẽ dùng bí danh (alias) là np để viết code ngắn gọn hơn:

import numpy as np

4. Tạo mảng NumPy đầu tiên

Bây giờ hãy thử tạo một mảng NumPy từ một List của Python:

import numpy as np

arr = np.array([1, 2, 3, 4, 5])

print(arr)
print(type(arr))

Kết quả:

[1 2 3 4 5]
<class 'numpy.ndarray'>

Lời kết Bài 11

Vậy là bạn đã có cái nhìn tổng quan về NumPy và cách cài đặt nó. Ở bài tiếp theo, chúng ta sẽ đi sâu vào cách Tạo mảng (Creating Arrays) với nhiều chiều khác nhau (0-D, 1-D, 2-D, 3-D).

Hẹn gặp lại các bạn!

Previous
Tự học Python - Bài 12: Khởi tạo mảng NumPy (Creating Arrays)
Next
Tự học Python - Bài 10: Duyệt List và kỹ thuật List Comprehension