Trong bài trước, chúng ta đã tìm hiểu về mô đun trong Python và cách nhập mô đun trong đó. Như các bạn đã biết, các mô đun phải cùng một folder với file Python khi chúng ta muốn import các mô đun đó. Việc này sẽ rất đơn giản nếu chúng ta chỉ import một vài mô đun. Tuy nhiên trong trường hợp bạn cần nhập hàng trăm tới hàng nghìn mô đun. Bạn sẽ cần sử dụng package trong Python để dễ dàng phân chia và nhập các mô đun trong Python. Trong bài viết hôm nay, bạn sẽ tìm hiểu về Package trong Python cùng cách sử dụng của nó.
Package trong Python là gì?
Khái niệm Package trong Python
Trong lập trình, chúng ta sẽ không lưu trữ tất cả tệp trên máy tính ở cùng một chỗ. Thay vào đó là hệ thống phân cấp thư mục để truy cập các tệp một cách dễ dàng hơn.
Các tệp tương tự được giữ trong cùng một thư mục, ví dụ, khi bạn lưu trữ các mục về “bài tập” bạn sẽ lưu tất cả các mục vào trong một folder. Trong Python cũng có các gói cho các thư mục và mô đun.
Khi thực hiện các chương trình phát triển với kích thước lớn với nhiều mô đun khác nhau. Bạn sẽ cần đặt các mô đun tương tự nhau trong cùng một package và các mô đun khác nhau trong những package khác. Bằng cách mỗi mô đun ta tạo cho nó một folder và folder nằm trong package, chúng ta sẽ dễ dàng xử lý các module hơn.
Tương tự như một thư mục trong máy tính, package trong Python chứa các thư mục con và tệp, một package Python có thể có các gói con và mô-đun
>>> Xem thêm: Tệp CSV trong Python - Làm việc với tệp CSV trong Python
Ví dụ về Package trong Python.
Một thư mục phải chứa một tệp được đặt tên __init__.py để Python coi nó như package. Tệp này có thể để trống nhưng bạn thường đặt mã khởi tạo cho gói đó trong tệp này.
Ví dụ, giả sử chúng ta đang phát triển một trò chơi. Một chương trình có thể có của các package và mô-đun có thể được thể hiện trong hình bên dưới.
Ví dụ về Package trong Python
>>> Tham khảo: Khóa học lập trình Python
Cách nhập mô đun từ một package
Sử dụng toán tử để nhập mô-đun trong Python
Bạn có thể nhập các mô đun từ các gói bằng toán tử dấu chấm (.).
Ví dụ, nếu chúng ta muốn nhập mô đun start trong ví dụ trên, nó có thể được thực hiện như sau:
import Game.Level.start
Bây giờ, nếu mô-đun này chứa một hàm được đặt tên select_difficulty(), chúng ta phải sử dụng tên đầy đủ để tham chiếu đến nó.
Game.Level.start.select_difficulty(2)
Nếu cấu trúc này có vẻ dài dòng, chúng ta có thể nhập mô-đun mà không có tiền tố gói như sau:
from Game.Level import start
Bây giờ chúng ta có thể gọi hàm đơn giản như sau:
start.select_difficulty(2)
Một cách khác để chỉ nhập hàm được yêu cầu (hoặc lớp hoặc biến) từ một mô-đun trong một gói sẽ như sau:
from Game.Level.start import select_difficulty
Bây giờ chúng ta có thể gọi trực tiếp hàm này.
select_difficulty(2)
Mặc dù khá dễ dàng nhưng cách nhập package này không được khuyến khích. Việc sử dụng không gian tên đầy đủ sẽ tránh nhầm lẫn và ngăn không cho hai định danh giống nhau va chạm.
Trong khi nhập các package, Python sẽ tìm trong danh sách các thư mục được xác định trong sys.path, tương tự như đối với đường dẫn tìm kiếm mô-đun .
Kết luận: Bài viết trên đã hướng dẫn bạn tìm hiểu sơ lược về Package trong Python cũng như cách import package trong Python. Hy vọng bạn có tận dụng được các kiến thức mà bài viết cung cấp trong quá trình lập trình với Python. Muốn thành thạo về Python và các ngôn ngữ lập trình khác, tìm hiểu các khóa học lập trình tại T3H.
Nguồn: programiz.com/