Skip to main content

Bài 9 - Các Module Khác Nhau trong Python

I. Giới thiệu về Module trong Python

Module phát âm tiếng anh Mỹ là /ˈmɑː.dʒuːl/ - dịch tiếng việt là mô-đun. 

Module là một tệp Python (bao gồm các file với tên kết thúc bằng đuôi .py) chứa các hàm, biến và lớp có thể được tái sử dụng trong các chương trình khác. Python có một hệ sinh thái module phong phú, bao gồm:

  1. Module tích hợp sẵn (Built-in): Có hơn 200 modules tích hợp sẵn trong Python truy cập http://doc.python.org/3/py-modindex.html (xắp xếp theo thứ tự chữ cái)
  2. Module bên ngoài (còn gọi là third-party module, không có sẵn nên bạn phải cài ví dụ pip install kagglehub trong terminal)
  3. Module tự tạo (Custom)

II. Các Loại Module Quan Trọng

Có hơn 200 modules tích hợp sẵn trong Python truy cập http://doc.python.org/3/py-modindex.html (xắp xếp theo thứ tự chữ cái). Các module như math, os, datetime, json, csv được buit-in sẵn trong Python khi sử dụng bạn chỉ cần import. 

1. Module Toán Học (math)

import math 
print(math.sqrt(16))  # 4.0 (căn bậc hai) 
print(math.pi)       # 3.141592653589793 
print(math.factorial(5))  # 120 (5!)

Ứng dụng: Tính toán khoa học, xử lý số liệu

2. Module Hệ Thống (os)

import os # Lấy đường dẫn thư mục hiện tại 
print(os.getcwd()) # Liệt kê tệp trong thư mục print(os.listdir())

Ứng dụng: Làm việc với hệ thống tệp

3. Module Thời Gian (time, datetime)

import time from datetime
import datetime # Đếm ngược 
time.sleep(2)  # Dừng 2 giây 
# Lấy thời gian hiện tại 
now = datetime.now() 
print(now.strftime("%d/%m/%Y"))  # 15/07/2023

4. Module Xử Lý Dữ Liệu (json, csv)

import json 
import csv 
# Đọc file JSON with open('data.json') as f:    data = json.load(f) # Ghi file CSV with open('output.csv', 'w') as f:    writer = csv.writer(f)    writer.writerow(['Name', 'Age'])

5. Module Mạng (requests)

import requests 
response = requests.get('https://api.github.com') 
print(response.status_code)  # 200

Ứng dụng: Làm việc với API web

6. Module Phân Tích Dữ Liệu (numpy, pandas)

Module numpy và pandas không sẵn có khi cài Python, nên bạn cần cài đặt sau đó import. 

import numpy as np
 import pandas as pd 
# Tạo mảng numpy 
arr = np.array([1, 2, 3]) 
# Đọc dữ liệu với pandas 
df = pd.read_csv('data.csv')

7. Module Đồ Họa (matplotlib)

matplotlib là một third-party module.

import matplotlib.pyplot as plt 
plt.plot([1, 2, 3], [4, 5, 1]) 
plt.show()

III. Cách Sử Dụng Module

1. Import toàn bộ module

import math 
print(math.sqrt(9))

2. Import với tên thay thế

Bạn có thể thay thế hay đổi tên module để cho ngắn gọn hơn ví dụ import pandas as pd, như vậy khi sử dụng chúng ta chỉ cần gõ pd mà không cần gõ toàn bộ tên module là pandas.

import numpy as np
import pandas as pd
print(np.array([1, 2, 3]))

3. Import chỉ những hàm cần thiết

from math import sqrt, pi 
print(sqrt(9))

4. Import tất cả hàm

from math import * 
print(sin(pi/2))

IV. Tạo Module Tùy Chỉnh

  1. Tạo tệp mymodule.py:
def greet(name):
  return f"Hello, {name}!" PI = 3.14
  1. Sử dụng module:
import mymodule 
print(mymodule.greet("Alice")) 
print(mymodule.PI)

V. Bài Tập Thực Hành

Bài 1: Viết chương trình tính diện tích hình tròn sử dụng module math

import math radius = 5 area = math.pi * math.pow(radius, 2) print(f"Diện tích: {area:.2f}")

Bài 2: Tạo module tự viết chứa hàm kiểm tra số nguyên tố

prime_checker.py:

def is_prime(n):    if n <= 1:        return False    for i in range(2, int(n**0.5) + 1):        if n % i == 0:            return False    return True

main.py:

from prime_checker import is_prime print(is_prime(17))  # True

VI. Tổng Kết

  • Python có hệ thống module phong phú cho mọi nhu cầu
  • Có thể dễ dàng tạo module tùy chỉnh
  • Sử dụng module giúp code có tổ chức và dễ bảo trì

Các module là một trong những tính năng mạnh mẽ nhất của Python, giúp bạn không phải "phát minh lại bánh xe"! 🚀