Cài đặt Python và môi trường ảo venv: tách thư viện cho từng dự án

  • author-image

    Nguyễn Đình Cường

  • blog-tag
  • blog-comment 0 comment
  • created-date 09 Nov, 2026
blog-thumbnail

Bạn cài Python xong, cài vài thư viện bằng pip, rồi một dự án cũ bỗng không chạy nữa? Đó là lúc môi trường ảo (venv) phát huy tác dụng. Bài này hướng dẫn cài Python đúng cách và dùng venv để mỗi dự án có bộ thư viện riêng, không đạp lên nhau.

Bước 1: Cài Python

Tải bản cài đặt từ trang chủ python.org, chọn phiên bản 3 ổn định mới. Khi chạy trình cài đặt trên Windows, hãy tích chọn "Add python.exe to PATH" ở màn hình đầu tiên. Quên tùy chọn này là nguyên nhân phổ biến nhất của lỗi "python không phải là lệnh".

Kiểm tra sau khi cài (mở terminal mới):

python --version
pip --version

Trên macOS và Linux, lệnh thường là python3 và pip3. Trên Windows còn có trình khởi chạy py, ví dụ py -3 --version.

Vì sao cần môi trường ảo

Giả sử dự án A cần phiên bản 1 của một thư viện, dự án B cần phiên bản 2. Nếu cài chung vào Python hệ thống, hai dự án sẽ xung đột. Môi trường ảo tạo ra một bản Python "thu nhỏ" kèm thư mục thư viện riêng cho mỗi dự án. Ngoài ra nó giữ cho Python hệ thống sạch sẽ và giúp người khác tái tạo đúng môi trường của bạn.

Bước 2: Tạo và kích hoạt venv

Trong thư mục dự án, chạy:

python -m venv venv

Lệnh này tạo thư mục venv. Để kích hoạt:

# Windows (PowerShell)
venv\Scripts\Activate.ps1

# Windows (Command Prompt)
venv\Scripts\activate.bat

# macOS / Linux
source venv/bin/activate

Khi kích hoạt thành công, dấu nhắc lệnh sẽ có tiền tố (venv). Nếu PowerShell báo không cho chạy script, bạn có thể dùng Command Prompt, hoặc tìm hiểu kỹ về chính sách thực thi của PowerShell trước khi thay đổi.

Để thoát môi trường ảo, gõ deactivate.

Bước 3: Cài thư viện và đóng băng danh sách

Khi đang ở trong venv, mọi lệnh pip chỉ ảnh hưởng đến môi trường này:

pip install requests
pip list
pip freeze > requirements.txt

File requirements.txt ghi lại các thư viện và phiên bản. Người khác (hoặc chính bạn trên máy mới) chỉ cần tạo venv rồi chạy:

pip install -r requirements.txt

Bước 4: Thử nghiệm

Tạo file main.py:

import requests

response = requests.get("https://api.github.com")
print(response.status_code)

Chạy python main.py. Nếu in ra mã trạng thái (thường là 200) thì thư viện đã cài đúng trong venv. Thử thoát venv rồi chạy lại để thấy lỗi thiếu module, bạn sẽ hiểu rõ ranh giới giữa hai môi trường.

Cấu hình trong VS Code

Mở thư mục dự án trong VS Code, bấm Ctrl + Shift + P, gõ Python: Select Interpreter rồi chọn Python nằm trong thư mục venv. Từ đó, terminal tích hợp, trình gỡ lỗi và gợi ý code đều dùng đúng môi trường.

Không nên quên

  • Thêm venv/ vào .gitignore. Không đưa thư mục venv lên Git, chỉ đưa requirements.txt.
  • Không di chuyển hoặc đổi tên thư mục venv sau khi tạo, vì các đường dẫn bên trong có thể hỏng. Nếu cần, hãy tạo lại.
  • Mỗi dự án một venv. Đặt tên thống nhất như venv hoặc .venv để dễ nhớ.
  • Cập nhật pip khi cần bằng python -m pip install --upgrade pip.

Công cụ thay thế

Sau khi quen venv, bạn có thể tìm hiểu các công cụ hiện đại hơn như pipenv, poetry hay uv, giúp quản lý phụ thuộc và phiên bản Python tiện hơn. Nguyên tắc cốt lõi vẫn là: mỗi dự án một môi trường độc lập và có danh sách phụ thuộc rõ ràng.

Kết luận

Dành năm phút thiết lập venv sẽ tiết kiệm cho bạn hàng giờ gỡ lỗi xung đột thư viện về sau. Đây là thói quen nên có ngay từ dự án Python đầu tiên.

Nếu bạn đang bắt đầu học Python, hãy tham khảo các khóa học phù hợp tại codebem.com để đi đúng lộ trình.

author_photo
Nguyễn Đình Cường

0 comment