Chọn đến phần học sinh cần nhanh chóng thông qua mục lục bằng cách click đến phần đó
- I. Lý thuyết trọng tâm
- 1. Ngôn ngữ lập trình bậc cao
- 2. Môi trường lập trình Python
- 3. Một số lệnh Python đầu tiên
- II. Phương pháp giải các dạng bài tập
- Dạng 1: Viết lệnh tính giá trị biểu thức trong Python
- Dạng 2: Phát hiện và giải thích lỗi cú pháp
- Dạng 3: Viết lệnh print() xuất thông tin ra màn hình
- Dạng 4: Xác định kết quả và kiểu dữ liệu của lệnh
- III. Sơ đồ tư duy
- IV. Sai lầm thường gặp
I. Lý thuyết trọng tâm
1. Ngôn ngữ lập trình bậc cao
a) Ba bậc ngôn ngữ lập trình
Chương trình máy tính về bản chất là tập hợp các chỉ thị (lệnh) mà con người viết ra để máy tính thực hiện. Tùy vào mức độ gần gũi với con người hay với máy, ngôn ngữ lập trình được chia thành ba bậc:

| Bậc | Ngôn ngữ | Đặc điểm | Dễ đọc? |
|---|---|---|---|
| Thấp nhất | Ngôn ngữ máy | Viết hoàn toàn bằng mã nhị phân (0 và 1) | Rất khó |
| Trung gian | Hợp ngữ (Assembly) | Dùng từ viết tắt tiếng Anh thay cho mã nhị phân | Khó |
| Cao nhất | Ngôn ngữ bậc cao | Câu lệnh gần với ngôn ngữ tự nhiên | Dễ |
Điểm mấu chốt: Ngôn ngữ bậc cao giúp lập trình viên đọc và viết chương trình dễ dàng hơn nhiều so với ngôn ngữ máy hay hợp ngữ. Tuy nhiên, máy tính chỉ hiểu ngôn ngữ máy, nên chương trình viết bằng ngôn ngữ bậc cao cần được chương trình dịch chuyển đổi sang ngôn ngữ máy trước khi thực thi.
Một số ngôn ngữ bậc cao thông dụng hiện nay: Java, C/C++, Python…
Câu hỏi kiểm tra nhanh: Viết chương trình bằng loại ngôn ngữ lập trình nào dễ nhất?
- A. Ngôn ngữ máy
- B. Hợp ngữ
- C. Ngôn ngữ lập trình bậc cao ✔️
b) Giới thiệu Python
Python do Guido van Rossum (người Hà Lan) phát triển, ra mắt lần đầu năm 1991. Hiện tại Python là một trong những ngôn ngữ lập trình phổ biến nhất thế giới, đặc biệt trong lĩnh vực nghiên cứu và giáo dục.
Những ưu điểm nổi bật của Python:
| Ưu điểm | Giải thích |
|---|---|
| Cú pháp đơn giản | Câu lệnh ngắn gọn, dễ đọc, dễ học |
| Đa nền tảng | Chạy trên nhiều hệ điều hành (Windows, macOS, Linux), nhiều thiết bị (máy tính, điện thoại, robot giáo dục…) |
| Mã nguồn mở | Miễn phí, thu hút cộng đồng lớn cùng phát triển |
| Thư viện phong phú | Hỗ trợ trí tuệ nhân tạo, phân tích dữ liệu, kĩ thuật robot… |
2. Môi trường lập trình Python
Phần mềm Python cung cấp một môi trường lập trình đầy đủ: soạn thảo chương trình, hỗ trợ gỡ lỗi, phân tích cú pháp và thực thi chương trình. Môi trường này hoạt động ở hai chế độ:

a) Chế độ gõ lệnh trực tiếp (Interactive Mode)
- Gõ lệnh ngay sau dấu nhắc
>>>, nhấn Enter để thực hiện. - Kết quả hiển thị ngay lập tức trên dòng tiếp theo.
- Dùng khi nào? Tính toán nhanh, thử nghiệm và kiểm tra từng lệnh đơn lẻ.
>>> <lệnh Python>
b) Chế độ soạn thảo (Script Mode)
- Mở cửa sổ soạn thảo bằng File → New File.
- Viết chương trình hoàn chỉnh gồm nhiều dòng lệnh, mỗi lệnh trên một dòng.
- Lưu tệp (Ctrl + S) rồi chạy bằng Run → Run Module (hoặc phím F5).
- Dùng khi nào? Viết các chương trình có nhiều dòng lệnh, cần lưu lại để sử dụng sau.

So sánh hai chế độ:
| Tiêu chí | Gõ lệnh trực tiếp | Soạn thảo |
|---|---|---|
| Cách mở | Có sẵn khi khởi động (IDLE Shell) | File → New File |
| Dấu hiệu nhận biết | Có dấu nhắc >>> |
Không có dấu nhắc |
| Số lệnh | Thường 1 lệnh/lần | Nhiều lệnh, thành chương trình |
| Thực thi | Nhấn Enter sau mỗi lệnh | Nhấn F5 để chạy toàn bộ |
| Lưu file | Không lưu được chương trình | Lưu thành file .py |
| Mục đích | Tính toán nhanh, kiểm tra lệnh | Viết chương trình hoàn chỉnh |
Lưu ý: Ngoài IDLE mặc định, có thể dùng các phần mềm khác để lập trình Python như Wingware, PyCharm, Thonny, Visual Studio…
Câu hỏi kiểm tra nhanh: “Dấu nhắc >>> chính là con trỏ soạn thảo chương trình Python.” — Đúng hay sai?
→ Sai. Dấu nhắc >>> chỉ xuất hiện ở chế độ gõ lệnh trực tiếp (IDLE Shell). Trong cửa sổ soạn thảo chương trình không có dấu nhắc này.
3. Một số lệnh Python đầu tiên
a) Python tự nhận biết kiểu dữ liệu
Khi nhập giá trị từ dòng lệnh, Python tự động xác định kiểu dữ liệu dựa vào cách viết:
| Cách nhập | Python hiểu là | Kiểu dữ liệu |
|---|---|---|
5 |
Số nguyên 5 | Số nguyên (int) |
2.6 |
Số thực 2.6 | Số thực (float) |
"học sinh lớp 10" |
Xâu kí tự | Xâu kí tự (string) |
Quy tắc: Số không có phần thập phân → số nguyên. Số có dấu chấm thập phân → số thực. Nội dung đặt giữa cặp dấu nháy kép " " hoặc nháy đơn ' ' → xâu kí tự.
b) Các phép toán cơ bản với số
Python hỗ trợ các phép toán số học thông thường:
| Phép toán | Kí hiệu | Ví dụ | Kết quả |
|---|---|---|---|
| Cộng | + |
3 + 7 |
10 |
| Trừ | - |
20 - 7 |
13 |
| Nhân | * |
12 * 5 |
60 |
| Chia | / |
5 / 2 |
2.5 |
Chú ý quan trọng: Phép chia
/trong Python luôn trả về số thực (float), ngay cả khi chia hết. Ví dụ:10 / 2cho kết quả5.0chứ không phải5.
c) Lệnh print() — xuất dữ liệu ra màn hình
Đây là lệnh cơ bản nhất để hiển thị thông tin. Cú pháp:
print(v1, v2, ..., vn)
Trong đó v1, v2, ..., vn là các giá trị cần in, phân cách bằng dấu phẩy.
Đặc điểm quan trọng của print():
- In được một hoặc nhiều giá trị cùng lúc.
- Nếu in nhiều giá trị, chúng hiển thị trên cùng một dòng, cách nhau bởi dấu cách.
- Có thể tính toán biểu thức rồi in kết quả.
Ví dụ minh họa:
>>> print(12)
12
>>> print(10, 3.4 + 4.1, "hoà bình")
10 7.5 hoà bình
>>> print("Dãy ba số chẵn:", 2, 4, 6)
Dãy ba số chẵn: 2 4 6
>>> print("3 + 7 =", 3+7)
3 + 7 = 10
Phân biệt rõ: Nội dung trong dấu nháy
" "được in nguyên văn (không tính toán). Nội dung ngoài dấu nháy được Python tính toán rồi mới in kết quả.
d) Kí hiệu chú thích #
Dòng bắt đầu bằng dấu # là chú thích (comment), Python sẽ bỏ qua không thực thi. Dùng để giải thích ý nghĩa của lệnh, giúp chương trình dễ đọc hơn.
# Chương trình đầu tiên
print("Xin chào!")
II. Phương pháp giải các dạng bài tập
Dạng 1: Viết lệnh tính giá trị biểu thức trong Python
Phương pháp:
- Bước 1: Xác định các phép toán trong biểu thức toán học.
- Bước 2: Chuyển đổi kí hiệu toán học sang kí hiệu Python:
- Phép nhân
×→* - Phép chia
÷hoặc/→/ - Phép cộng, trừ giữ nguyên
+,-
- Phép nhân
- Bước 3: Gõ biểu thức sau dấu nhắc
>>>và nhấn Enter.
Lưu ý thứ tự ưu tiên: Nhân
*và chia/được thực hiện trước cộng+và trừ-, giống toán học. Muốn thay đổi thứ tự thì dùng dấu ngoặc tròn().
Bài tập mẫu (SGK – Luyện tập, bài 1): Viết lệnh tính giá trị các biểu thức sau trong chế độ gõ lệnh trực tiếp:
a) $10 + 13$ b) $20 – 7$ c) $3 \times 10 – 16$ d) $12/5 + 13/6$
Lời giải:
>>> 10 + 13
23
>>> 20 - 7
13
>>> 3 * 10 - 16
14
>>> 12/5 + 13/6
4.566666666666666
Giải thích câu c: 3 * 10 - 16 → nhân trước: 30 - 16 = 14.
Giải thích câu d: 12/5 + 13/6 → chia trước: 2.4 + 2.1666... ≈ 4.5667. Phép chia / trả về số thực nên kết quả là số thực.
Dạng 2: Phát hiện và giải thích lỗi cú pháp
Phương pháp:
Khi kiểm tra lệnh Python, chú ý các lỗi cú pháp thường gặp:
| Loại lỗi | Dấu hiệu | Ví dụ sai |
|---|---|---|
| Hai toán tử liền nhau | +*, -/, */… không hợp lệ |
3 + * 5 |
| Dấu nháy lồng nhau cùng loại | Dấu " bên trong xâu " " gây nhầm lẫn |
"bạn tên là "Nguyễn" |
| Thiếu toán tử giữa hai số | Hai số đặt cạnh nhau không có phép toán | 5 2 |
| Thiếu dấu nháy | Xâu kí tự không đóng mở đúng cặp | print("hello) |
Bài tập mẫu (SGK – Luyện tập, bài 2): Các lệnh sau có lỗi không? Vì sao?
>>> 3 + * 5
>>> "Bạn là học sinh, bạn tên là "Nguyễn Việt Anh""
Lời giải:
Lệnh 1: 3 + * 5 → Có lỗi. Hai toán tử + và * đặt liền nhau, giữa chúng không có giá trị nào. Python không hiểu phải thực hiện phép toán gì. Sửa đúng tùy ý định, ví dụ: 3 + 5 hoặc 3 * 5.
Lệnh 2: "Bạn là học sinh, bạn tên là "Nguyễn Việt Anh"" → Có lỗi. Dấu nháy kép trước chữ “Nguyễn” bị Python hiểu là kết thúc xâu, khiến phần Nguyễn Việt Anh"" nằm ngoài xâu và gây lỗi cú pháp. Cách sửa: dùng dấu nháy đơn cho xâu bên trong, ví dụ: "Bạn là học sinh, bạn tên là 'Nguyễn Việt Anh'".
Dạng 3: Viết lệnh print() xuất thông tin ra màn hình
Phương pháp:
- Bước 1: Xác định phần nào là văn bản cố định (in nguyên văn) → đặt trong dấu nháy
" ". - Bước 2: Xác định phần nào là biểu thức cần tính → viết ngoài dấu nháy.
- Bước 3: Ghép các phần bằng dấu phẩy
,trong lệnhprint().
Mẹo: Khi muốn in cả biểu thức lẫn kết quả (ví dụ
3 + 7 = 10), ta viết biểu thức dưới dạng xâu"3 + 7 ="kèm biểu thức tính3+7cách nhau bởi dấu phẩy.
Bài tập mẫu (SGK – Luyện tập, bài 3): Viết lệnh in ra màn hình thông tin sau:
a) 1 × 3 × 5 × 7 = 105
b) Bạn Hoa năm nay 16 tuổi.
Lời giải:
# Câu a
>>> print("1 x 3 x 5 x 7 =", 1*3*5*7)
1 x 3 x 5 x 7 = 105
Giải thích: Phần "1 x 3 x 5 x 7 =" in nguyên văn, phần 1*3*5*7 được Python tính ra 105 rồi in.
# Câu b
>>> print("Bạn Hoa năm nay 16 tuổi.")
Bạn Hoa năm nay 16 tuổi.
Giải thích: Toàn bộ nội dung là văn bản cố định, chỉ cần đặt trong dấu nháy kép.
Dạng 4: Xác định kết quả và kiểu dữ liệu của lệnh
Phương pháp:
- Bước 1: Xác định phép toán và thứ tự thực hiện (nhân/chia trước, cộng/trừ sau).
- Bước 2: Tính kết quả.
- Bước 3: Xác định kiểu dữ liệu kết quả theo quy tắc:
- Phép
/→ luôn cho số thực (float) - Số nguyên ± số nguyên, số nguyên × số nguyên → số nguyên (int)
- Có số thực tham gia phép tính → kết quả là số thực (float)
- Nội dung trong dấu nháy → xâu kí tự (string)
- Phép
Bài tập mẫu (SGK – Câu hỏi mục 3, bài 1): Kết quả của mỗi lệnh sau là gì? Kết quả đó có kiểu dữ liệu nào?
Lời giải:
| Lệnh | Kết quả | Kiểu dữ liệu | Giải thích |
|---|---|---|---|
>>> 5/2 |
2.5 |
Số thực (float) | Phép chia / luôn cho số thực |
>>> 12 + 1.5 |
13.5 |
Số thực (float) | Có số thực 1.5 tham gia → kết quả là số thực |
>>> "Bạn là học sinh lớp 10" |
'Bạn là học sinh lớp 10' |
Xâu kí tự (string) | Nội dung trong dấu nháy kép → xâu kí tự |
>>> 10 + 7/2 |
13.5 |
Số thực (float) | 7/2 = 3.5 → 10 + 3.5 = 13.5 (có phép chia → số thực) |
III. Sơ đồ tư duy
1. Ngôn ngữ lập trình bậc cao
- 1.1. Ba bậc: ngôn ngữ máy → hợp ngữ → ngôn ngữ bậc cao
- 1.2. Đặc điểm: câu lệnh gần ngôn ngữ tự nhiên, dễ đọc hiểu
- 1.3. Cần chương trình dịch để chuyển sang ngôn ngữ máy
- 1.4. Các ngôn ngữ phổ biến: Java, C/C++, Python
2. Giới thiệu Python
- 2.1. Tác giả: Guido van Rossum (Hà Lan), ra mắt năm 1991
- 2.2. Ưu điểm: cú pháp đơn giản, đa nền tảng, mã nguồn mở, thư viện phong phú
- 2.3. Ứng dụng: nghiên cứu, giáo dục, AI, phân tích dữ liệu
3. Môi trường lập trình Python
- 3.1. Chế độ gõ lệnh trực tiếp: dấu nhắc
>>>, nhấn Enter → thực thi ngay - 3.2. Chế độ soạn thảo: File → New File, viết nhiều dòng lệnh, chạy bằng F5
- 3.3. Phần mềm hỗ trợ: IDLE, PyCharm, Thonny, Visual Studio…
4. Các lệnh Python đầu tiên
- 4.1. Python tự nhận biết kiểu dữ liệu (số nguyên, số thực, xâu kí tự)
- 4.2. Phép toán:
+(cộng),-(trừ),*(nhân),/(chia) - 4.3. Lệnh
print(): in một hoặc nhiều giá trị, có thể tính biểu thức - 4.4. Kí hiệu
#: dòng chú thích, Python bỏ qua
IV. Sai lầm thường gặp
| Sai lầm | Đính chính |
|---|---|
Nhầm lẫn dấu nhắc >>> xuất hiện ở cả hai chế độ |
Dấu nhắc >>> chỉ có ở chế độ gõ lệnh trực tiếp. Cửa sổ soạn thảo chương trình không có dấu nhắc. |
Dùng dấu × (nhân toán học) hoặc ÷ (chia) trong Python |
Python dùng * cho phép nhân và / cho phép chia. Viết × hay ÷ sẽ báo lỗi. |
Nghĩ rằng 5/2 cho kết quả 2 (số nguyên) |
Phép chia / trong Python luôn trả về số thực: 5/2 = 2.5, thậm chí 10/2 = 5.0 (không phải 5). |
Lồng dấu nháy kép trong dấu nháy kép: "Tên là "Hoa"" |
Dấu nháy kép bên trong bị hiểu là kết thúc xâu → lỗi. Cách sửa: dùng nháy đơn bên trong "Tên là 'Hoa'" hoặc ngược lại. |
Nhầm lẫn giữa in nguyên văn và tính toán trong print() |
Nội dung trong dấu nháy " " → in nguyên văn. Nội dung ngoài dấu nháy → Python tính toán rồi in kết quả. Ví dụ: print("3+7") in ra 3+7, còn print(3+7) in ra 10. |
Viết hai toán tử liền nhau: 3 + * 5 |
Python không cho phép hai toán tử liền nhau mà không có giá trị ở giữa. Phải viết rõ ràng: 3 + 5 hoặc 3 * 5. |

Thầy Phạm Thành Danh
(Người kiểm duyệt, ra đề)
Chức vụ: Trưởng ban biên soạn môn Tin Học THPT
Trình độ: Cử nhân Sư phạm Tin học, Chứng chỉ hạng II, Chứng chỉ Tin học, Ngoại ngữ B1
Kinh nghiệm: 8+ năm kinh nghiệm tại Trường THPT Thuận Hóa

