INTRODUCTION
FLOW CONTROL
FUNCTIONS
DATATYPES
OBJECT & CLASS
ADVANCED TOPICS
BỔ SUNG
PYTHON CĂN BẢN
CÁC CHỦ ĐỀ
BÀI MỚI NHẤT
MỚI CẬP NHẬT

Thông báo: Download 4 khóa học Python từ cơ bản đến nâng cao tại đây.

Package trong Python: Có gì khác với module

Trong bài này chúng ta sẽ tìm hiểu package trong Python, đây là phương pháp quản lý các module theo package, giúp việc xây dựng cấu trúc của ứng dụng Python trở nên đơn giản hơn rất nhiều.

Trong bài module mình đã hướng dẫn bạn cách tạo một module đơn giản trong Python, và nó nằm cùng cấp thư mục với file chính của chương trình. Giả sử trường hợp bạn tạo ra 100 modules thì phải tạo ra 100 files, như vậy việc quản lý các modules sẽ rất phức tạp.

banquyen png
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

Để đơn giản hóa thì trong Python xuất hiện thêm khái niệm package. Chi tiết thế nào thì chúng ta cùng tìm hiểu ngay nhé.

1. Package trong Python là gì?

Package là cách tạo ra các gói và mỗi gói sẽ chứa những module liên quan với nhau. Phương pháp này giúp việc phân chia modules trong Python một cách dễ dàng.

Bạn có thể hiểu một package giống như folder trong máy tính vậy. Bên trong folder này có thể chứa thêm một folder khác (tức là package khác), và cũng có thể chứa thêm những file khác (tức là các modules).

Hình ảnh dưới đây là cấu trúc của package Game.

cau truc package python jpg

Như bạn thấy:

  • Bên trong Game có thêm 3 package con là Sound, Image, Level
  • Bên trong 3 package con này chứa các module có liên quan với nhau.

Điều đặc biệt là mỗi package bắt buộc phải có file __init__.py, đây là file được gọi đầu tiên mỗi khi bạn import package nó vào chương trình. Nếu bạn đã học lập trình hướng đối tượng thì file này giống như hàm khởi tạo của một lớp vậy đó.

2. Thực hành tạo một package trong Python

Giả sử mình cần tạo package có tên là Store.

package store JPG

Như bạn thấy trong hình, mình đã tạo một folder Store và một file __init__.py, bây giờ mình sẽ viết code trong file này như sau:

Store/__init__.py
print("Bạn đã load package Store")

Để gọi đến package này trong file helloworld.py thì ta sử dụng lệnh sau

import Store

Chạy lên bạn sẽ nhận được kết quả như sau:

package ket qua 1 JPG

Như vậy đoạn code trong file __init__.py đã tự động được gọi.

3. Tạo module trong Package Python

Để tạo một module nằm trong một package A thì bạn chỉ việc tạo file module_name.py nằm trong thư mục package A là được.

Giả sử mình cần tạo module computer.py nằm trong package Store thì cấu trúc sẽ như sau:

package store 2 JPG

Tạo một hàm trong package computer như sau:

def showComputerMsg(msg):
    print(msg)

Bây giờ để sử dụng package computer trong file helloworld.py thì ta sử dụng lệnh import như sau:

import Store.computer
Store.computer.showComputerMsg('Máy tính của Freetuts.net')

Hoặc sử dụng lệnh from ... import như sau:

from Store import computer
computer.showComputerMsg('Máy tính của Freetuts.net')

4. Tạo package bên trong một package khác

Package trong Python có thể tạo chồng lên nhau. Ví dụ trong package A bạn muốn chia thành 2 package nhỏ là B và C thì hoàn toàn được, bằng cách sử dụng cấu trúc sub folder như phần 1.

Điều lưu ý duy nhất là mỗi package bắt buộc phải có file __init__.py nhé.

packageA
    __init__.py
    packageB
        __init__.py
    packageC
        __init__.py

Và để truy xuất đến các package này thì chỉ việc sử dụng dấu chấm để nối giữa các package là được.

Ví dụ: Giả sử mình có cấu trúc package như sau trong một ứng dụng Python.

Store
    __init__.py
    Computer
        __init__.py
        Ram
            __init__.py
            raminfor.py

Lúc này để gọi đến module raminfor thì ta sử dụng cú pháp sau:

import Store.Computer.Ram.raminfor

Các cách gọi khác thì tương tự như phần 3 nhé.

Như vậy là qua bài này bạn đã biết cách sử dụng package trong Python rồi nhỉ. Mình hy vọng bạn hiểu được các vấn đề sau:

  • Cách tạo và gọi đến các package
  • Hiểu ý nghĩa của file __init__.py trong Python
  • Và nhiều kiến thức liên quan khác.

Cùng chuyên mục:

Hàm Dictionary clear() trong Python

Hàm Dictionary clear() trong Python

Cách dùng hàm Dictionary clear() trong Python

Hàm Dictionary copy() trong Python

Hàm Dictionary copy() trong Python

Cách dùng hàm Dictionary copy() trong Python

Hàm Dictionary fromkeys() trong Python

Hàm Dictionary fromkeys() trong Python

Cách dùng hàm Dictionary fromkeys() trong Python

Hàm Dictionary get() trong Python

Hàm Dictionary get() trong Python

Cách dùng hàm Dictionary get() trong Python

Hàm Dictionary items() trong Python

Hàm Dictionary items() trong Python

Cách dùng hàm Dictionary items() trong Python

Hàm Dictionary keys() trong Python

Hàm Dictionary keys() trong Python

Cách dùng hàm Dictionary keys() trong Python

Hàm List append() trong Python

Hàm List append() trong Python

Cách dùng hàm List append() trong Python

Hàm List extend() trong Python

Hàm List extend() trong Python

Cách dùng hàm List extend() trong Python

Hàm List insert() trong Python

Hàm List insert() trong Python

Cách dùng hàm List insert() trong Python

Hàm List remove() trong Python

Hàm List remove() trong Python

Cách dùng hàm List remove() trong Python

Hàm List index() trong Python

Hàm List index() trong Python

Cách dùng hàm List index() trong Python

Hàm List count() trong Python

Hàm List count() trong Python

Cách dùng hàm List count() trong Python

Hàm List pop() trong Python

Hàm List pop() trong Python

Cách dùng hàm List pop() trong Python

Hàm List reverse() trong Python

Hàm List reverse() trong Python

Cách dùng hàm List reverse() trong Python

Hàm List sort() trong Python

Hàm List sort() trong Python

Cách dùng hàm List sort() trong Python

Hàm List copy() trong Python

Hàm List copy() trong Python

Cách dùng hàm List copy() trong Python

Hàm List clear() trong Python

Hàm List clear() trong Python

Cách dùng hàm List clear() trong Python

Hàm Set remove() trong Python

Hàm Set remove() trong Python

Cách dùng hàm Set remove() trong Python

Hàm Set add() trong Python

Hàm Set add() trong Python

Cách dùng hàm Set add() trong Python

Hàm Set copy() trong Python

Hàm Set copy() trong Python

Cách dùng hàm Set copy() trong Python

Top