Python - Bài 2: Nói chuyện với máy tính (biến & input) (Vỡ lòng Python)

Bài 2: Nói chuyện với máy tính (biến & input)

🎯 Mục tiêu bài học
Sau bài này, em sẽ biết: (1) biến là gì và cách cất dữ liệu vào biến; (2) dùng input để máy tính hỏi và ghi nhớ câu trả lời; (3) nối lời chào với tên vừa nhập để in ra thật thân thiện.
Ở Bài 1, máy tính chỉ biết in ra những gì ta viết sẵn. Nhưng nếu ta muốn máy hỏi tên rồi chào đúng tên từng bạn thì sao? Muốn vậy, máy cần biết cách ghi nhớ thông tin — và đó chính là lúc ta dùng biến!

1. Biến là gì? — Cái hộp chứa dữ liệu 📦

Biến giống như một cái hộp có dán nhãn tên. Bạn cất một giá trị vào hộp, rồi sau này chỉ cần gọi tên hộp là lấy lại được giá trị bên trong.
ten "An" cái hộp tên là ten tuoi 10 cái hộp tên là tuoi
Biến giống như một cái hộp có dán nhãn tên, bên trong cất một giá trị

Để cất giá trị vào biến, ta dùng dấu bằng =. Bên trái là tên biến, bên phải là giá trị:

ten = "An"
tuoi = 10
print(ten)
print(tuoi)
👉 Kết quả in ra 2 dòng: An10. Chú ý: khi in ten (không có ngoặc kép), máy in ra giá trị bên trong hộp chứ không in chữ "ten".
⚠️ Phân biệt quan trọng: print(ten) in ra giá trị trong hộp (là An), còn print("ten") có ngoặc kép sẽ in đúng chữ ten.

2. Máy tính hỏi: lệnh input

input có nghĩa là "nhập vào". Lệnh này giúp máy dừng lại chờ bạn gõ, rồi ghi nhớ câu trả lời vào một biến.
ten = input("Bạn tên là gì? ")
print("Xin chào", ten)
🖥️ Bạn tên là gì? 🙂 Bạn: An 🖥️ Xin chào bạn An!
Lệnh input() giúp máy tính "hỏi" và ghi nhớ câu trả lời của bạn vào một biến
👉 Máy sẽ hiện câu hỏi "Bạn tên là gì?", chờ bạn gõ (ví dụ An), rồi in ra: Xin chào An. Câu trả lời của bạn được cất trong biến ten.

3. Nối lời chào với tên 🔗

Ta có thể ghép nhiều phần trong một print bằng dấu phẩy (máy tự thêm khoảng trắng), giống như đã học ở Bài 1:

ten = input("Tên bạn: ")
lop = input("Lớp bạn: ")
print("Chào", ten, "lớp", lop)
👉 Nếu bạn gõ An rồi 4A, máy in ra: Chào An lớp 4A. Máy dùng đúng những gì bạn vừa nhập!

4. Đặt tên biến & lỗi thường gặp 🐞

Quy tắc / LỗiVí dụ
Tên biến nên viết thường, không dấu, không khoảng trắngĐúng: ten, tuoi, ten_lop
Không được bắt đầu bằng sốSai: 2ten  →  Đúng: ten2
Gọi biến chưa được tạoSai: print(diem) khi chưa có diem
Viết ngược vế gánSai: "An" = ten  →  Đúng: ten = "An"
💡 Máy đọc lệnh gán = theo hướng: lấy giá trị bên phải, cất vào cái hộp bên trái. Nhớ đúng chiều này bạn sẽ ít mắc lỗi!

5. Cùng luyện tập nào! ✍️

Câu 1. Sau khi chạy đoạn lệnh sau, biến tuoi chứa giá trị gì?

tuoi = 11
Dấu = cất giá trị bên phải vào hộp bên trái. Vậy cái hộp tuoi giờ chứa số 11.

Câu 2. Đoạn lệnh sau in ra gì?

mon = "Toán"
print(mon)
Khi in mon (không có ngoặc kép), máy in ra giá trị bên trong hộp, tức là Toán. Nếu viết print("mon") mới in ra chữ "mon".

Câu 3. Bạn Lan gõ Lan khi máy hỏi. Đoạn lệnh sau in ra gì?

ten = input("Tên: ")
print("Xin chào", ten)
Câu trả lời Lan được cất vào biến ten. Khi in ten, máy lấy giá trị trong hộp ra, và ghép với "Xin chào" (có khoảng trắng do dấu phẩy). Kết quả: Xin chào Lan.

Câu 4. 🐞 Tên biến nào sau đây hợp lệ (đặt được)?

Tên biến không được bắt đầu bằng số (loại A) và không được có khoảng trắng (loại C). Ta dùng dấu gạch dưới _ để nối, nên ten_lop là hợp lệ.

Câu 5. 🐞 Muốn cất chữ Nam vào biến ten, cách viết nào đúng?

Lệnh gán viết tên hộp bên trái, giá trị bên phải: ten = "Nam". Viết ngược (B) là sai. Còn == (C) là để so sánh, ta sẽ học sau, không dùng để gán.

🚀 Tự tay thử code Python ngay tại đây!

Gõ code rồi bấm Chạy. Khi gặp input(), máy sẽ hiện một ô nhỏ để bạn gõ câu trả lời rồi bấm OK. Thử đổi câu hỏi hoặc thêm biến mới nhé!
(Kết quả sẽ hiện ở đây...)
💡 Mẹo: dùng chữ không dấu trong ô này để tránh lỗi phông chữ nhé.
📝 Thử thách mở rộng: Hãy viết chương trình hỏi tên, hỏi con vật bạn thích, rồi in ra một câu vui, ví dụ: "Chào An, chúc bạn và chú mèo một ngày vui!". Dùng input()print() với dấu phẩy nhé.