Package trong Python
Trong bài trước bạn đã tìm hiểu về module, cách tạo và gọi một module trong Python. Ở bài này, chúng ta sẽ học cách phân chia code thành những module hiệu quả, rõ ràng, sử dụng các package trong Python. Thêm nữa là cách để nhập và sử dụng package của riêng bạn, hoặc package bạn tải về từ đâu đó vào chương trình Python.
Package trong Python là gì?
Thông thường người dùng không lưu trữ tất cả các file của mình trên máy tính ở cùng một thư mục, vị trí, mà sử dụng hệ thống phân cấp thư mục để truy cập dễ dàng hơn. Các tệp tương tự hoặc cùng liên quan đến một chủ đề nào đó sẽ được để trong cùng một thư mục, chẳng hạn các bài học về hàm Python sẽ lưu trong thư mục hàm Python. Tương tự như vậy, Python có các package cho thư mục và module cho file.
Khi chương trình đang code ngày càng lớn với rất nhiều module, chúng ta sẽ đặt những module giống nhau vào một package, và những nhóm module khác vào package khác. Điều này giúp dễ dàng quản lý chương trình hơn và nó cũng dễ hiểu hơn.
Nếu như thư mục có thể chứa các thư mục con thì package cũng vậy, trong một package có thể có package con và các module khác.
Một thư mục phải chứa file có tên __init__.py để Python hiểu thư mục này là một package. File này có thể để trống, nhưng thông thường các lập trình viên thường đặt code khởi tạo cho package ở đây.
Giả sử, ta đang phát triển chương trình có tên QTM, với các package con, module như sau:

Nhập module từ package trong Python
Ta có thể nhập các module từ package sử dụng toán tử dấu chấm (.).
Ví dụ, nếu muốn nhập module mo.py trong ví dụ trên, bạn làm như sau:
import QTM.Video.moNếu trong module mo.py chứa hàm có tên là chon_video(), bạn sẽ phải sử dụng tên đầy đủ để tham chiếu tới nó:
import QTM.Video.mo.chon_video(video1)Nếu cấu trúc trên dài quá, bạn có thể nhập module mà không cần tiền tố package như sau:
from QTM.Video import moTa có thể gọi hàm đơn giản như sau:
mo.chon_video(video1)Ngoài ra, còn một cách nữa để chỉ nhập hàm được yêu cầu (lớp hoặc biến) từ module trong 1 package như sau:
from QTM.Video.mo import chon_videoSau đó, trực tiếp gọi hàm này:
chon_video(video1)Dù dễ dàng hơn, nhưng cách nhập sau cùng này không được khuyến khích sử dụng. Việc dùng tên đầy đủ sẽ giúp giảm tình trạng nhầm lẫn và tránh bị trùng giữa những định danh giống nhau.
Trong khi nhập các package, Python sẽ tìm kiếm danh sách thư mục được định nghĩa trong sys.path, giống như đường dẫn tìm kiếm module. Bạn đừng quên làm bài tập Python nhé!
Bạn nên đọc
-
Hàm vô danh, Lambda trong Python
-
Lập trình hướng đối tượng trong Python
-
Tham số hàm Python
-
Tìm hiểu Class và Object trong Python
-
Hàm dict() trong Python
-
Hàm đệ quy trong Python
-
Từ khóa global trong Python
-
Biến toàn cục (global), biến cục bộ (local), biến nonlocal trong Python
-
Regular Expression (RegEx) trong Python
Theo Nghị định 147/2024/ND-CP, bạn cần xác thực tài khoản trước khi sử dụng tính năng này. Chúng tôi sẽ gửi mã xác thực qua SMS hoặc Zalo tới số điện thoại mà bạn nhập dưới đây:
Cũ vẫn chất
-

Công thức tính chu vi hình tứ giác, diện tích hình tứ giác
Hôm qua 1 -

Cách chia sẻ một thư mục (folder) trên Windows 10
Hôm qua -

Sửa lỗi 0x80070643 trên Windows
Hôm qua -

Cách cho người lạ xem Nhật ký Zalo
Hôm qua -

Những trang web đen siêu hay không thể tìm thấy trên Google
Hôm qua 3 -

30+ bài thơ về rượu bia hay, thơ chế về rượu bia hài hước và bá đạo cho dân nhậu
Hôm qua -

Tổng hợp thao tác Touchpad trên Windows 10, Windows 11
Hôm qua -

Cài đặt Python Package với PIP trên Windows, Mac và Linux
Hôm qua -

Những stt hay nói về miệng lưỡi thế gian đáng để suy ngẫm
Hôm qua -

Stt về tiền hài hước, những câu nói hài hước về tiền nhưng thâm thúy, ‘thô mà thật’
Hôm qua
Học IT
Microsoft Word 2013
Microsoft Word 2007
Microsoft Excel 2019
Microsoft Excel 2016
Microsoft PowerPoint 2019
Google Sheets
Lập trình Scratch
Bootstrap
Hướng dẫn
Ô tô, Xe máy