Giáo trình Python cơ bản cho trẻ

Python cơ bản

🚀 Python Cơ Bản

Học lập trình thật dễ dàng và thú vị!

1️⃣ Chương 1: Python là gì?

Khởi động nào!

  1. Bạn biết những trò chơi nào làm bằng Python?
  2. Tìm 3 ứng dụng của Python trong đời sống
  3. Vẽ một con rắn Python bằng giấy
  4. Hỏi ba mẹ xem có biết Python không
  5. Đếm xem có bao nhiêu thiết bị dùng Python quanh bạn

Python - Ngôn ngữ của bạn nhỏ

Python là ngôn ngữ lập trình dễ học, được dùng để tạo ra nhiều thứ thú vị như:

  • Trò chơi điện tử
  • Ứng dụng di động
  • Robot thông minh
  • Trang web vui nhộn
Kiểm tra xem trên máy đã có Python chưa?
Bạn có biết? Python được đặt tên theo chương trình hài Monty Python, không phải con rắn đâu nhé!

2️⃣ Chương 2: Cài đặt Python

Chuẩn bị nào!

  1. Tải Python từ trang chủ python.org.
  2. Cài đặt Python với sự giúp đỡ của người lớn.
  3. Mở Python và gõ print(1+1) xem kết quả.
  4. Thử dùng IDLE - chương trình đi kèm Python.
  5. Kể tên các phần mềm dùng để lập trình Python mà em biết.

Cài đặt Python thật dễ!

  1. Truy cập python.org/downloads
  2. Chọn "Download Python" (nút màu vàng lớn)
  3. Chạy file vừa tải về
  4. Nhớ chọn ô "Add Python to PATH"
  5. Nhấn "Install Now"
# Đây là dòng code Python đầu tiên của bạn! print("Xin chào! Mình là Python!")
Lưu ý nhỏ: Nếu dùng Mac hoặc Linux, Python thường đã được cài sẵn. Gõ python3 để chạy nhé!

3️⃣ Chương 3: Biến và Toán tử

Thử tài nào!

  1. Tạo biến tên em và in ra màn hình
  2. Tính tuổi của em vào năm sau và in ra màn hình
  3. Đổi 5km sang mét (1km = 1000m) và in ra màn hình
  4. Tính diện tích hình vuông cạnh 7cm và in ra màn hình
  5. Đổi 2 giờ 30 phút sang phút và in ra màn hình

Biến - Hộp đựng đồ của lập trình

Trong Python, biến là một cách để lưu trữ và quản lý dữ liệu trong chương trình. Bạn có thể hiểu biến như một "hộp chứa" có tên, bên trong chứa một giá trị (dữ liệu) mà bạn có thể sử dụng hoặc thay đổi sau này.

tên_biến = giá_trị
Quy tắc đặt tên biến:

Dùng chữ cái, số, dấu _, không bắt đầu bằng số.

Không trùng từ khóa Python (if, for,...).

Phân biệt hoa/thường (Bien ≠ bien).

Tên rõ nghĩa, dùng snake_case (ten_bien).

Tránh ký tự đặc biệt hoặc Unicode có dấu (tên)

# Ví dụ tạo biến ten = "Bé Mai" tuoi = 10 chieu_cao = 140 print("Tên: ", ten) print("Tuổi: ", tuoi) print("Chiều cao: ", chieu_cao)

Các phép toán cơ bản

+ # Cộng - # Trừ * # Nhân / # Chia // # Chia lấy phần nguyên % # Chia lấy phần dư ** # Lũy thừa
# Ví dụ tính toán a = 15 b = 4 print(a + b) # 19 print(a - b) # 11 print(a * b) # 60 print(a / b) # 3.75
Mách nhỏ: Để ghi chú trong code mà không gây lỗi chương trình. hãy thêm dấu # trước ghi chú nhé!

4️⃣ Chương 4: Kiểu dữ liệu và câu lệnh ra - vào

Khám phá nào!

  1. Viết chương trình nhập vào tên và tuổi của em, in ra màn hình: "Xin chào [tên của em]! bạn đã [tuổi của em] tuổi!"
  2. Chương trình nhập vào năm sinh của em, tính tuổi và xuất ra màn hình.
  3. Viết chương trình nhập vào 3 cạnh của tam giác. tính chu vi và xuất ra màn hình.
  4. Viết chương trình nhập vào 2 cạnh của hình chữ nhật. tính chu vi, diện tích và xuất ra màn hình.
  5. Viết chương trình nhập vào 2 số a và b. tính trung bình cộng 2 số và xuất ra màn hình.

Các kiểu dữ liệu

Trong Python, kiểu dữ liệu xác định loại giá trị mà một biến có thể chứa. Python là ngôn ngữ động kiểu (dynamically typed), nghĩa là bạn không cần khai báo kiểu dữ liệu trước, Python tự động nhận diện dựa trên giá trị gán cho biến. Các kiểu dữ liệu chính trong Python:

Các kiểu dữ liệu chính trong Python: Số nguyên (int): 1, 2, 3 Số thực (float): 1.5, 3.14 Chuỗi (str): "Xin chào", 'Python' Boolean (bool): True, False
# Ví dụ kiểu dữ liệu ho_ten = "Nguyen Van An" # Kiểu chuỗi (string) chieu_cao = 1.4 # Số thực (float) can_nang = 40 # Số nguyên (int)
Lưu ý:

Khi gán giá trị cho biến, biến sẽ tự động nhận kiểu dữ liệu dựa trên giá trị được gán.

Kiểu dữ liệu chuổi được đặt trong cặp dấu "" hoặc ''.

Kết quả của phép chia luôn là kiểu số thực.

Câu lệnh ra

# In thông tin ra màn hình print("Danh sách biểu thức") # các biểu thức cách nhau bởi dấu phẩy ,
# Ví dụ in ra màn hình tuoi = 25 chieu_cao = 173 ten = "Vuong" print("xin chao!") # in ra một giá trị print("Minh ten la: ",ten) # in ra nhiều giá trị print("tuoi la: ",tuoi) print("chieu cao la: ",chieu_cao)

Câu lệnh vào

# Nhập dữ liệu từ bàn phím ten_bien = input("Dòng thông báo")
# Ví dụ in ra màn hình ho_ten = input("Hay nhap ten cua ban: ") # nhập tên tuoi = input("Hay nhap tuoi cua ban: ") # Nhập tuổi print("Ho va ten: ",ho_ten,", Tuoi: ",tuoi) # in tên và tuổi ra màn hình

Ép kiểu dữ liệu

Khi nhập dữ liệu, Python mặc định nhận kiểu chuỗi. Để thực hiện tính toán, ta cần ép kiểu dữ liệu sang dạng số. ten_bien = int(input("Dòng thông báo ")) # Ép kiểu số nguyên ten_bien = float(input("Dòng thông báo ")) # Ép kiểu số thực.
# Ví dụ nhập năm sinh, tính tuổi và in ra màn hình ho_ten = input("Hay nhap ten cua ban: ") # nhập tên nam_sinh = int(input("Hay nhap nam sinh cua ban: ")) # Nhập năm sinh tuoi = 2025 - nam_sinh # tính tuổi print("Ho va ten: ",ho_ten,", Tuoi: ",tuoi) # in tên và tuổi ra màn hình
Lưu ý:

Dữ liệu khi nhập vào từ input() luôn ở dạng chuỗi. nhớ "Ép kiểu" để tính toán nhé!

Dùng lệnh type(ten_bien) để kiểm tra kiểu dữ liệu của biến.

Khám phá nào!

  1. Viết chương trình tính tiền nước. biết 1 khối nước = 15,000đ
  2. Viết chương trình tính tiền gạo. biết 1kg gạo = 23,000đ
  3. Viết chương trình nhập vào n ki-lô-mét, đổi sang đơn vị mét

5️⃣ Chương 5: So sánh và Điều kiện

Thử thách nào!

  1. Kiểm tra 5 có lớn hơn 3 không và xuất ra màn hình.
  2. Kiểm tra xem "Python" có giống "python" không và xuất ra màn hình.
  3. Viết chương trình nhập vào tuổi của em, kiểm tra em đã đủ tuổi lái xe chưa (18+).
  4. Viết chương trình nhập vào số nguyên n, kiểm tra n là chẵn hay lẻ và xuất ra màn hình.
  5. Viết chương trình nhập vào số nguyên n, kiểm tra n có chia hết cho 3 không? Và xuất ra màn hình.

Các phép so sánh

== # Bằng nhau != # Khác nhau > # Lớn hơn < # Nhỏ hơn >= # Lớn hơn hoặc bằng <= # Nhỏ hơn hoặc bằng
# Ví dụ phép so sánh a = 5 b = 3 print(a == b) # False print(a != b) # True print(a > b) # True print(a < b) # False print(a >= 5) # True print(a <= 4) # False

Câu lệnh điều kiện if

if điều_kiện: # Khối lệnh thực thi nếu điều kiện đúng
# Ví dụ kiểm tra tuổi tuoi = int(input("Hay nhap tuoi cua ban: ")) # Nhập tuổi if tuoi >= 18: print("Bạn đã trưởng thành!")

Câu lệnh điều kiện if-elif-else

if điều_kiện_1: # Khối lệnh thực thi nếu điều kiện đúng else: # Khối lệnh thực thi nếu điều kiện sai
# Ví dụ kiểm tra tuổi tuoi = int(input("Hay nhap tuoi cua ban: ")) # Nhập tuổi if tuoi >= 18: print("Bạn đã đủ tuổi thi bằng lái!") else: print("Bạn chưa đủ tuổi thi bằng lái!")

Câu lệnh điều kiện if-elif-else

if điều_kiện_1: # Khối lệnh thực thi nếu điều kiện 1 đúng elif điều_kiện_2: # Khối lệnh thực thi nếu điều kiện 2 đúng else: # Khối lệnh thực thi nếu tất cả sai
# Ví dụ kiểm tra tuổi tuoi = int(input("Hay nhap tuoi cua ban: ")) # Nhập tuổi if tuoi >= 18: print("Bạn đã trưởng thành!") elif tuoi >= 13: print("Bạn là thiếu niên!") else: print("Bạn là nhi đồng!")
Nhớ nhé: Thụt lề (khoảng cách đầu dòng) rất quan trọng trong Python. Các lệnh trong khối if phải thụt vào 4 spaces!

Luyện tập nào!

  1. Nhập vào 2 số nguyên a và b, Kiểm tra xem a có lớn hơn b không?.
  2. Viết chương trình tính tiền điện, 50 số đầu giá 1,900đ, từ số 51 trở đi giá 2,100đ .
  3. Viết chương trình tính tiên Taxi. 1km đầu: 15,000đ, từ km thứ 2: 12,000đ/km.

6️⃣ Chương 6: Vòng lặp

Khởi động nào!

  1. In các số từ 1 đến 10
  2. Tính tổng từ 1 đến 10
  3. Đếm ngược từ 10 đến 1 rồi in "Chúc mừng"
  4. In các số chẵn từ 0 đến 20
  5. In bảng cửu chương 5

Vòng lặp for - Lặp lại với số lần biết trước

for biến in dãy: # Khối lệnh sẽ được lặp lại
# Ví dụ in số từ 1 đến 5 for i in range(1, 6): print(i)
# Xuấn ra màn hình bảng cửu chương so = int(input("Nhập số bạn muốn in bảng cửu chương: ")) for i in range(1, 11): print(so, "x", i, "=", so * i)

Vòng lặp while - Lặp khi còn đúng

while điều_kiện: # Khối lệnh được lặp lại
# Ví dụ đếm ngược dem = 5 while dem > 0: print(dem) dem = dem - 1 print("Bùm!")
Chú ý: Vòng lặp while có thể chạy mãi nếu điều kiện luôn đúng. Nhớ chú ý điều kiện để dừng vòng lặp nhé! Có thể dùng break để thoát khỏi vòng lặp ngay.

Luyện tập nào!

  1. In các số lẻ từ 1 đến 20
  2. In các số chẳn giảm dần từ 20 về 0
  3. Tính tổng các số chẵn từ 50 đến 100
  4. Tính tổng các số chia hết cho 5 trong khoảng 10 đến 100
  5. In ra màn hình một hình chữ nhật bằng dấu * kích thước 5 x 10

7️⃣ Chương 7: Bài tập ôn tập cuối khóa

📝 Phần 1: Trắc Nghiệm (20 câu)

Câu 1: Python là gì?

A. Một ngôn ngữ lập trình
B. Một loại rắn
C. Một loại bánh
D. Một loại xe

Câu 2: Câu lệnh nào in ra màn hình trong Python?

A. echo()
B. write()
C. print()
D. display()

Câu 3: Đâu là cách khai báo biến đúng trong Python?

A. ten = "Bé Mai"
B. var ten = "Bé Mai"
C. string ten = "Bé Mai"
D. ten: "Bé Mai"

Câu 4: Kết quả của 5 + 3 * 2 là bao nhiêu?

A. 16
B. 11
C. 10
D. 13

Câu 5: Đâu là kiểu dữ liệu số thực trong Python?

A. int
B. float
C. str
D. bool

Câu 6: Đâu là phép toán chia lấy phần nguyên?

A. /
B. //
C. %
D. **

Câu 7: Kết quả của 10 % 3 là bao nhiêu?

A. 1
B. 3
C. 0
D. 10

Câu 8: Đâu là cách nhập dữ liệu từ bàn phím?

A. read()
B. input()
C. get()
D. scan()

Câu 9: Đâu là phép so sánh "khác" trong Python?

A. =!
B. <>
C. !=
D. ~=

Câu 10: Kết quả của "Hello" + "Python" là gì?

A. "HelloPython"
B. "Hello Python"
C. "Hello" + "Python"
D. Báo lỗi

Câu 11: Đâu là cách ép kiểu chuỗi sang số nguyên?

A. string()
B. int()
C. float()
D. number()

Câu 12: Câu lệnh nào kiểm tra điều kiện trong Python?

A. if
B. check
C. when
D. test

Câu 13: Kết quả của 2 == 3 là gì?

A. False
B. True
C. 0
D. Báo lỗi

Câu 14: Đâu là vòng lặp trong Python?

A. repeat
B. for
C. loop
D. cycle

Câu 15: Giá trị của s là gì? s = int(3+3/2).

A. 4.5
B. 4
C. 5
D. Lỗi

Câu 16: Đâu là cách đặt tên biến đúng trong Python

A. ho_ten = "Nguyen Van An":
B. nam sinh = 2000
C. chieu_cao := 1.4
D. dong-vat = "con meo"

Câu 17: Đâu là cách ghi chú trong Python?

A. // Ghi chú
B. # Ghi chú
C. /* Ghi chú */
D. !Ghi chú

Câu 18: Kết quả của 2 ** 3 là bao nhiêu?

A. 6
B. 5
C. 8
D. 9

Câu 19: Đâu là kiểu dữ liệu boolean trong Python?

A. true/false
B. True/False
C. TRUE/FALSE
D. 1/0

Câu 20: Câu lệnh đúng để nhập chiều cao (đơn vị là mét) từ bàn phím là

A. chieu_cao = int(input("nhap chieu cao cua ban"))
B. chieu_cao = float(input("nhap chieu cao cua ban"))
C. print(input("nhap chieu cao cua ban"))
D. chieu-cao = 1.4m

💻 Phần 2: Thực Hành

Bài 1: In lời chào

Viết chương trình in ra màn hình dòng chữ "Xin chào! Tên em là [tên của em]"

print("Xin chào! Tên em là Bé Mai")

Bài 2: Tính tuổi

Viết chương trình nhập năm sinh và in ra tuổi hiện tại (năm hiện tại là 2025)

nam_sinh = int(input("Nhập năm sinh của em: ")) tuoi = 2025 - nam_sinh print("Tuổi của em là:", tuoi)

Bài 3: Tính chu vi hình chữ nhật

Viết chương trình nhập chiều dài và chiều rộng, tính chu vi hình chữ nhật

chieu_dai = float(input("Nhập chiều dài: ")) chieu_rong = float(input("Nhập chiều rộng: ")) chu_vi = 2 * (chieu_dai + chieu_rong) print("Chu vi hình chữ nhật là:", chu_vi)

Bài 4: Kiểm tra số chẵn/lẻ

Viết chương trình nhập một số và kiểm tra xem đó là số chẵn hay lẻ

so = int(input("Nhập một số: ")) if so % 2 == 0: print("Số chẵn") else: print("Số lẻ")

Bài 5: In các số từ 1 đến 10

Viết chương trình in các số từ 1 đến 10 sử dụng vòng lặp for

for i in range(1, 11): print(i)

Bài 6: Tính tổng từ 1 đến 100

Viết chương trình tính tổng các số từ 1 đến 100

tong = 0 for i in range(1, 101): tong = tong + i print("Tổng là:", tong)

Bài 7: Bảng cửu chương

Viết chương trình in bảng cửu chương của một số được nhập vào

so = int(input("Nhập số bạn muốn in bảng cửu chương: ")) for i in range(1, 11): print(so, "x", i, "=", so * i)

Bài 8: Đếm ngược

Viết chương trình đếm ngược từ 10 đến 1 rồi in "Chúc mừng!"

dem = 10 while dem > 0: print(dem) dem = dem - 1 print("Chúc mừng!")

Bài 9: Tính giai thừa

Viết chương trình tính giai thừa của một số (ví dụ: 5! = 1x2x3x4x5)

n = int(input("Nhập số cần tính giai thừa: ")) giai_thua = 1 for i in range(1, n+1): giai_thua = giai_thua*i print(n, "! =", giai_thua)

Bài 10: Kiểm tra số nguyên tố

Viết chương trình kiểm tra xem một số có phải là số nguyên tố không (số nguyên tố là các số lớn hơn hoặc bằng 2 và chỉ chia hết cho 1 và chính nó)

n = int(input("Nhập số cần kiểm tra: ")) la_nguyen_to = "Đúng" if n <= 1: la_nguyen_to = "Sai" else: for i in range(2, n): if n % i == 0: # Kiểm tra n có chia hết cho các số khác ngoài 1 và n không la_nguyen_to = "Sai" break if la_nguyen_to == "Đúng": print(n, "là số nguyên tố") else: print(n, "không phải số nguyên tố")

Bài 11: Tính tiền điện

Viết chương trình tính tiền điện biết giá 1500đ/kWh

so_kwh = float(input("Nhập số kWh sử dụng: ")) tien_dien = so_kwh * 1500 print("Tiền điện phải trả:", tien_dien, "đồng")

Bài 12: Đổi nhiệt độ C sang F

Công thức: F = C × 1.8 + 32

do_C = float(input("Nhập nhiệt độ C: ")) do_F = do_C * 1.8 + 32 print(do_C, "độ C =", do_F, "độ F")

Bài 13: Tính chỉ số BMI

BMI = cân nặng (kg) / (chiều cao (m) × chiều cao)

chieu_cao = float(input("Nhập chiều cao (m): ")) can_nang = float(input("Nhập cân nặng (kg): ")) bmi = can_nang / (chieu_cao ** 2) print("Chỉ số BMI của bạn là:", round(bmi, 2))

Bài 14: Giải phương trình bậc 1

Giải phương trình ax + b = 0

a = float(input("Nhập hệ số a: ")) b = float(input("Nhập hệ số b: ")) if a == 0: if b == 0: print("Phương trình vô số nghiệm") else: print("Phương trình vô nghiệm") else: x = -b / a print("Nghiệm x =", x)

Bài 15: Đổi Inch sang cm

Công thức: cm = Inch / 0.39370

do_dai_Inch = float(input("Nhập độ dài (Inch): ")) do_dai_cm = do_dai_Inch / 0.39370 print(do_dai_Inch, "Inch =", do_dai_cm, " cm")

Bài 16: Tính tiền taxi

1km đầu: 15,000đ, từ km thứ 2: 12,000đ/km

so_km = float(input("Nhập số km: ")) if so_km <= 1: tien = so_km * 15000 else: tien = 15000 + (so_km - 1) * 12000 print("Số tiền phải trả:", tien, "đồng")

Bài 17: In bảng cửu chương rút gọn

In bảng cửu chương từ 2 đến 9

for i in range(2, 10): for j in range(1, 11): print(i, "x", j, "=", i*j) print() # Xuống dòng sau mỗi bảng

Bài 18: Tính tiền lãi ngân hàng

Lãi suất 7%/năm, tính tiền lãi sau 1 năm

tien_gui = float(input("Nhập số tiền gửi: ")) lai_suat = 0.07 tien_lai = tien_gui * lai_suat print("Tiền lãi sau 1 năm:", tien_lai, "đồng")

Bài 19: Tính tiền nước

Viết chương trình tính tiền nước biết giá 15000đ/khối

so_nuoc = float(input("Nhập số mét khối nước sử dụng: ")) tien_nuoc = so_nuoc * 15000 print("Tiền nước của bạn:", tien_nuoc, "đồng")

Bài 20: Tính chu vi, diện tích hình tròn

PI = 3.14, chu vi = 2πr, diện tích = πr²

r = float(input("Nhập bán kính: ")) PI = 3.14 chu_vi = 2 * PI * r dien_tich = PI * r * r print("Chu vi:", chu_vi) print("Diện tích:", dien_tich)

Bài 21: Đếm số chữ số

Đếm số chữ số của một số nguyên dương

n = int(input("Nhập số nguyên dương: ")) dem = 0 while n > 0: dem = dem + 1 n = n // 10 print("Số chữ số:", dem)

Bài 22: Tính tổng chữ số

Tính tổng các chữ số của một số nguyên dương

n = int(input("Nhập số nguyên dương: ")) tong = 0 while n > 0: tong = tong + n % 10 n = n // 10 print("Tổng các chữ số:", tong)

Bài 23: Tìm chữ số lớn nhất

Tìm chữ số lớn nhất trong một số nguyên dương

n = int(input("Nhập số nguyên dương: ")) max_chu_so = 0 while n > 0: chu_so = n % 10 if chu_so > max_chu_so: max_chu_so = chu_so n = n // 10 print("Chữ số lớn nhất:", max_chu_so)

Bài 24: Kiểm tra số hoàn hảo

Số hoàn hảo là số bằng tổng các ước (không tính chính nó)

n = int(input("Nhập số nguyên dương: ")) tong_uoc = 0 for i in range(1, n): if n % i == 0: tong_uoc = tong_uoc + i if tong_uoc == n: print(n, "là số hoàn hảo") else: print(n, "không phải số hoàn hảo")

Bài 25: In số chẵn trong khoảng

In các số chẵn từ a đến b

a = int(input("Nhập a: ")) b = int(input("Nhập b: ")) print("Các số chẵn từ", a, "đến", b, "là:") for i in range(a, b + 1): if i % 2 == 0: print(i, end=" ")

Bài 26: Tính tổng S = 1 + 1/2 + 1/3 + ... + 1/n

Tính tổng nghịch đảo các số từ 1 đến n

n = int(input("Nhập n: ")) S = 0 for i in range(1, n + 1): S += 1 / i print("Tổng S =", S)

Bài 27: Tính tổng giai thừa S = 1! + 2! + ... + n!

Tính tổng các giai thừa từ 1! đến n!

n = int(input("Nhập n: ")) tong = 0 giai_thua = 1 for i in range(1, n + 1): giai_thua = giai_thua * i tong = tong + giai_thua print("Tổng giai thừa =", tong)

Bài 28: Đếm số lượng ước

Đếm số lượng ước của một số nguyên dương

n = int(input("Nhập số nguyên dương: ")) dem = 0 for i in range(1, n + 1): if n % i == 0: dem = dem + 1 print("Số lượng ước của", n, "là:", dem)

Bài 29: Kiểm tra số chính phương

Số chính phương là số bằng bình phương của một số nguyên

n = int(input("Nhập số nguyên dương: ")) la_chinh_phuong = False for i in range(1, int(n**0.5) + 1): if i * i == n: la_chinh_phuong = True break if la_chinh_phuong: print(n, "là số chính phương") else: print(n, "không phải số chính phương")

Bài 30: In hình vuông sao

In hình vuông bằng dấu * với kích thước n

n = int(input("Nhập kích thước hình vuông: ")) for i in range(n): for j in range(n): print("*", end=" ") print() # Xuống dòng

🎉 Chúc mừng bạn đã hoàn thành giáo trình Python cho trẻ! 🎉

Hãy tiếp tục khám phá thế giới lập trình đầy thú vị!