Python bài 02: Môi trường ảo, pip, cú pháp và nhập xuất
- 18-10-2026
- Toanngo92
- 0 Comments
Giáo trình Python miễn phí · Chương 1/12: Làm quen Python và môi trường làm việc · Bài 02/24.
Mục lục
Mục tiêu bài học
Tạo môi trường riêng cho dự án, cài thư viện đúng nơi và hiểu thụt lề, biến, input() và print().
Mỗi dự án một môi trường
Môi trường ảo chứa trình thông dịch liên kết với một bộ thư viện riêng. Nhờ vậy hai dự án có thể dùng các phiên bản thư viện khác nhau. Thư mục .venv là phần có thể tạo lại, không phải nơi lưu mã nguồn.
Các lệnh dưới đây dành cho Windows. Trên macOS/Linux, thay py bằng python3 khi tạo môi trường và kích hoạt bằng source .venv/bin/activate. Nếu PowerShell chặn script kích hoạt, có thể dùng trực tiếp .venv\Scripts\python.exe thay vì thay đổi chính sách bảo mật toàn máy.
py -m venv .venv
.venv\Scripts\activate
python -m pip --version
python -m pip install requests
python -m pip freeze > requirements.txt
Dùng python -m pip giúp pip đi cùng trình thông dịch đang chọn. Để dựng lại thư viện trong một môi trường mới, chạy python -m pip install -r requirements.txt. freeze ghi lại những gói đang có, nên thực hiện trong môi trường dự án sạch. Gõ deactivate để thoát môi trường đã kích hoạt.
Cú pháp và thụt lề
Python dùng thụt lề để xác định khối lệnh. Thông thường dùng bốn dấu cách cho mỗi cấp, không trộn tab với dấu cách. Dấu # bắt đầu chú thích đến hết dòng. Chọn tên biến có ý nghĩa và dùng kiểu snake_case, ví dụ ten_hoc_vien.
input() luôn trả về chuỗi. Muốn tính toán với số cần chuyển kiểu và xử lý trường hợp người dùng gõ sai. Ví dụ dưới đây thể hiện luồng nhập, kiểm tra, xử lý và xuất kết quả; cấu trúc try/except sẽ được học kỹ ở chương ngoại lệ.
ten = input("Tên học viên: ").strip()
try:
so_buoi = int(input("Số buổi học: "))
if so_buoi < 0:
print("Số buổi không được âm.")
else:
print(f"{ten} đăng ký {so_buoi} buổi.")
except ValueError:
print("Vui lòng nhập số buổi là số nguyên.")
Quan sát thay vì đoán
Thử nhập tên có dấu cách đầu/cuối, số buổi bằng 0 và chuỗi abc. strip() bỏ khoảng trắng hai đầu tên; int() chuyển chuỗi số thành số nguyên và gây ValueError nếu chuỗi không hợp lệ. f-string là chuỗi bắt đầu bằng f, các biểu thức trong dấu ngoặc nhọn được chèn vào kết quả.
Lỗi thường gặp và lưu ý
- Không lưu mật khẩu hoặc môi trường .venv vào kho Git công khai. requirements.txt chỉ ghi thư viện, không chứa bí mật.
- Không dùng tên biến trùng print, input, list hoặc str; nếu đã gán nhầm trong terminal tương tác, khởi động lại phiên học.
Ghi nhớ
Môi trường ảo quản lý thư viện; thụt lề quản lý khối lệnh; dữ liệu nhập cần được chuyển kiểu trước khi tính toán.

