Chào mừng các bạn đến với Rcom Dăm Yi blog - Kho tài liệu bổ ích!, Chúng tôi sẽ từng bước hoàn thiện để bạn đọc cảm thấy hài lòng, hữu ích!
Hiển thị các bài đăng có nhãn Khóa học lập trình Python cơ bản. Hiển thị tất cả bài đăng
Hiển thị các bài đăng có nhãn Khóa học lập trình Python cơ bản. Hiển thị tất cả bài đăng

Thứ Sáu, 23 tháng 1, 2026

🐍 Khóa học Lập trình Python cơ bản

Lộ trình học Python từ con số 0 – dành cho học sinh THPT

0 / 20 bài đã học
🐍 PYTHON CƠ BẢN – BỘ 1
Bài 20: Mini Project (Quản lý điểm) | THPT Phan Chu Trinh
🎯 Dự án nhỏ
Viết chương trình quản lý điểm học sinh theo menu:

(1) Thêm/Cập nhật điểm (tên → điểm)
(2) Xoá học sinh theo tên
(3) Tra cứu điểm theo tên
(4) In danh sách + tính điểm trung bình
(5) Lưu dữ liệu (mô phỏng ghi file) vào localStorage
(6) Tải dữ liệu (mô phỏng đọc file) từ localStorage
(0) Thoát

Mục tiêu: Tổng hợp kiến thức: dict, hàm, vòng lặp, try/except, lưu/đọc dữ liệu.
📝 Soạn thảo Python
▶ Kết quả sẽ hiển thị ở đây...
# Lời giải gợi ý (Bài 20) – ý tưởng
# 1) Dùng dict: diem[ten] = d
# 2) Menu while True + if/elif
# 3) Lưu dữ liệu: join từng dòng "ten|diem"
# 4) Tải dữ liệu: splitlines + split("|")
# 5) Nhập an toàn: try/except
🧾 Lịch sử chạy
    ⚠ Hướng dẫn dùng nhanh:
    • Khi chạy, chương trình sẽ hiện MENU → nhập số lựa chọn (0..6) rồi Enter
    • Nên thử: (1) thêm 2-3 học sinh → (4) xem danh sách → (5) lưu → (6) tải lại
    🐍 PYTHON CƠ BẢN – BỘ 1
    Bài 19: Xử lý lỗi (try/except) | THPT Phan Chu Trinh
    🎯 Bài toán
    Viết chương trình nhập n (số nguyên dương). Nếu nhập sai thì yêu cầu nhập lại.
    Sau đó nhập n số (float), nếu nhập sai thì nhập lại cho đúng.

    Cuối cùng in ra:
    • Danh sách số đã nhập
    • Tổng và trung bình

    Mục tiêu: Biết dùng try/except để chương trình không bị dừng khi nhập sai.
    📝 Soạn thảo Python
    ▶ Kết quả sẽ hiển thị ở đây...
    # Lời giải gợi ý (Bài 19)
    def input_int_pos(msg):
        while True:
            try:
                n = int(input(msg))
                if n > 0: return n
            except:
                pass
            print("Nhap sai, nhap lai!")
    
    def input_float(msg):
        while True:
            try:
                return float(input(msg))
            except:
                print("Nhap sai, nhap lai!")
    
    n = input_int_pos("n=")
    ds = [input_float("x=") for _ in range(n)]
    print(sum(ds), sum(ds)/n)
    🧾 Lịch sử chạy
      ⚠ Ghi nhớ nhanh:
      • Khối lệnh bắt lỗi: try: ... except: ...
      • Dùng while True để nhập lại đến khi đúng
      • Nên kiểm tra điều kiện (vd: n > 0) sau khi ép kiểu thành công
      🐍 PYTHON CƠ BẢN – BỘ 1
      Bài 18: Đọc/Ghi dữ liệu (mô phỏng file) | THPT Phan Chu Trinh
      🎯 Bài toán
      Trên máy tính, ta thường ghi dữ liệu ra fileđọc dữ liệu từ file.
      Khi chạy Python trong trình duyệt (Pyodide), ta sẽ mô phỏng như sau:

      GHI: lưu danh sách số vào “kho lưu” (localStorage) như lưu file
      ĐỌC: lấy dữ liệu từ “kho lưu” ra để xử lý

      Yêu cầu chương trình:
      1) Nhập n và nhập n số → tạo danh sách ds
      2) In ds, tổng, max, min
      3) Ghi ds vào “file mô phỏng” (localStorage) dạng chuỗi CSV: 1,2,3
      4) Đọc lại dữ liệu vừa lưu và in ra danh sách đã đọc
      📝 Soạn thảo Python
      ▶ Kết quả sẽ hiển thị ở đây...
      # Lời giải gợi ý (Bài 18)
      from js import localStorage
      KEY = "CB1_B18_FILE"
      
      ds = [1, 2, 3]
      localStorage.setItem(KEY, ",".join(map(str, ds)))
      
      txt = localStorage.getItem(KEY)
      ds2 = list(map(float, txt.split(",")))
      print(ds2)
      🧾 Lịch sử chạy
        ⚠ Ghi nhớ nhanh:
        • Mô phỏng “ghi file”: localStorage.setItem(KEY, text)
        • Mô phỏng “đọc file”: localStorage.getItem(KEY)
        • CSV: các số cách nhau bằng dấu phẩy: 1,2,3
        🐍 PYTHON CƠ BẢN – BỘ 1
        Bài 17: Chuỗi nâng cao (tách & đếm từ) | THPT Phan Chu Trinh
        🎯 Bài toán
        Nhập một câu s.

        Hãy in ra:
        1) Chuỗi sau khi chuẩn hoá (xoá khoảng trắng dư ở đầu/cuối, gom nhiều khoảng trắng thành 1)
        2) Danh sách các từ (tách bởi khoảng trắng)
        3) Số lượng từ
        4) Từ dài nhấtđộ dài của nó
        5) Nhập thêm từ khóa k, đếm xem k xuất hiện bao nhiêu lần (không phân biệt HOA/thường)
        Gợi ý: strip(), split(), lower()
        📝 Soạn thảo Python
        ▶ Kết quả sẽ hiển thị ở đây...
        # Lời giải gợi ý (Bài 17)
        s = input()
        s_chuan = " ".join(s.strip().split())
        tu = s_chuan.split()
        
        print(len(tu))
        
        if tu:
            tu_dai = max(tu, key=len)
            print(tu_dai, len(tu_dai))
        
        k = input().strip().lower()
        dem = sum(1 for w in tu if w.lower() == k)
        print(dem)
        🧾 Lịch sử chạy
          ⚠ Ghi nhớ nhanh:
          • Chuẩn hoá khoảng trắng: " ".join(s.strip().split())
          • Tách từ: s.split() (tự xử lý nhiều khoảng trắng)
          • Không phân biệt hoa/thường: so sánh bằng lower()
          🐍 PYTHON CƠ BẢN – BỘ 1
          Bài 16: Từ điển (Dictionary) | THPT Phan Chu Trinh
          🎯 Bài toán
          Tạo chương trình quản lý điểm bằng dictionary:

          1) Nhập số lượng học sinh n
          2) Mỗi học sinh nhập: tênđiểm → lưu vào dictionary (tên → điểm)
          3) In danh sách (tên, điểm)
          4) Nhập tên cần tra cứu → in điểm (nếu có), nếu không báo “không tìm thấy”
          5) Tính điểm trung bình của cả lớp
          Gợi ý: dict, in, items(), values()
          📝 Soạn thảo Python
          ▶ Kết quả sẽ hiển thị ở đây...
          # Lời giải gợi ý (Bài 16)
          diem = {}
          n = int(input("Nhap n: "))
          for _ in range(n):
              ten = input("Ten: ").strip()
              d = float(input("Diem: "))
              diem[ten] = d
          
          for ten, d in diem.items():
              print(ten, d)
          
          t = input("Tra cuu: ").strip()
          print(diem.get(t, "Khong tim thay"))
          
          print("TB =", sum(diem.values())/len(diem))
          🧾 Lịch sử chạy
            ⚠ Ghi nhớ nhanh:
            • Tạo dict: diem = {}
            • Gán: diem[ten] = d
            • Duyệt: for k, v in diem.items()
            • Kiểm tra tồn tại: if ten in diem
            🐍 PYTHON CƠ BẢN – BỘ 1
            Bài 15: Hàm + List (xử lý danh sách) | THPT Phan Chu Trinh
            🎯 Bài toán
            Nhập số nguyên dương n, sau đó nhập n số nguyên và lưu vào danh sách ds.

            Viết các hàm sau:
            1) tinh_tong(ds): trả về tổng các phần tử trong ds
            2) dem_so_chan(ds): trả về số lượng số chẵn trong ds
            3) tim_max(ds): trả về giá trị lớn nhất trong ds

            Cuối cùng in ra kết quả của các hàm.
            📝 Soạn thảo Python
            ▶ Kết quả sẽ hiển thị ở đây...
            # Lời giải gợi ý (Bài 15)
            def tinh_tong(ds):
                return sum(ds)
            
            def dem_so_chan(ds):
                return sum(1 for x in ds if x % 2 == 0)
            
            def tim_max(ds):
                return max(ds)
            
            n = int(input("Nhap n: "))
            ds = [int(input()) for _ in range(n)]
            print(sum(ds), dem_so_chan(ds), max(ds))
            🧾 Lịch sử chạy
              ⚠ Ghi nhớ nhanh:
              • Hàm giúp tái sử dụng code (gọn, dễ đọc)
              • Xử lý list: duyệt bằng for x in ds
              • Có thể dùng hàm sẵn có: sum, max
              🐍 PYTHON CƠ BẢN – BỘ 1
              Bài 14: Hàm (Function) | THPT Phan Chu Trinh
              🎯 Bài toán
              Viết các hàm sau:
              1) ham_tong(n): trả về tổng các số từ 1 đến n
              2) la_so_chan(x): kiểm tra x có phải số chẵn hay không

              Sau đó:
              • Nhập số nguyên dương n → in tổng từ 1 đến n
              • Nhập số nguyên x → kiểm tra chẵn / lẻ
              Mục tiêu: Hiểu cách định nghĩa hàmgọi hàm
              📝 Soạn thảo Python
              ▶ Kết quả sẽ hiển thị ở đây...
              # Lời giải gợi ý (Bài 14)
              
              def ham_tong(n):
                  return sum(range(1, n+1))
              
              def la_so_chan(x):
                  return x % 2 == 0
              
              n = int(input("Nhap n: "))
              print("Tong =", ham_tong(n))
              
              x = int(input("Nhap x: "))
              if la_so_chan(x):
                  print("CHAN")
              else:
                  print("LE")
              🧾 Lịch sử chạy
                ⚠ Ghi nhớ nhanh:
                • Khai báo hàm: def ten_ham(tham_so):
                return dùng để trả kết quả
                • Hàm giúp tái sử dụng code, chương trình rõ ràng hơn
                🐍 PYTHON CƠ BẢN – BỘ 1
                Bài 13: List nâng cao (lọc & đếm điều kiện) | THPT Phan Chu Trinh
                🎯 Bài toán
                Nhập số nguyên dương n, sau đó nhập n số nguyên và lưu vào danh sách ds.

                Hãy in ra:
                1) Danh sách vừa nhập
                2) Số lượng số chẵnsố lẻ
                3) Danh sách các số dương (lọc theo điều kiện)
                4) Nhập thêm số x, kiểm tra x có trong ds không, nếu có in ra vị trí xuất hiện đầu tiên (index)
                Gợi ý: dùng %, for, append, in, index()
                📝 Soạn thảo Python
                ▶ Kết quả sẽ hiển thị ở đây...
                # Lời giải gợi ý (Bài 13)
                n = int(input("Nhap n: "))
                ds = []
                for i in range(n):
                    ds.append(int(input("Nhap so: ")))
                
                dem_chan = sum(1 for v in ds if v % 2 == 0)
                dem_le   = n - dem_chan
                
                ds_duong = [v for v in ds if v > 0]
                
                x = int(input("Nhap x: "))
                if x in ds:
                    print("Index =", ds.index(x))
                else:
                    print("Khong co")
                🧾 Lịch sử chạy
                  ⚠ Ghi nhớ nhanh:
                  x in ds: kiểm tra có tồn tại
                  ds.index(x): vị trí xuất hiện đầu tiên (nếu có)
                  • Lọc: dùng vòng lặp + append
                  🐍 PYTHON CƠ BẢN – BỘ 1
                  Bài 12: Danh sách (List) | THPT Phan Chu Trinh
                  🎯 Bài toán
                  Nhập số nguyên dương n.
                  Sau đó nhập n số (mỗi lần nhập 1 số). Lưu vào danh sách (list).

                  Hãy in ra:
                  1) Danh sách vừa nhập
                  2) Tổng các phần tử
                  3) Giá trị lớn nhất (max)nhỏ nhất (min)
                  4) Trung bình (average)
                  Lưu ý: Nếu nhập sai kiểu (chữ), chương trình sẽ báo lỗi thân thiện.
                  📝 Soạn thảo Python
                  ▶ Kết quả sẽ hiển thị ở đây...
                  # Lời giải gợi ý (Bài 12)
                  n = int(input("Nhap n: "))
                  ds = []
                  
                  for i in range(n):
                      x = float(input("Nhap so: "))
                      ds.append(x)
                  
                  print("Danh sach:", ds)
                  print("Tong =", sum(ds))
                  print("Max =", max(ds))
                  print("Min =", min(ds))
                  print("Trung binh =", sum(ds)/n)
                  🧾 Lịch sử chạy
                    ⚠ Ghi nhớ nhanh:
                    • Tạo list rỗng: ds = []
                    • Thêm phần tử: ds.append(x)
                    • Tổng/Max/Min: sum(ds), max(ds), min(ds)
                    🐍 PYTHON CƠ BẢN – BỘ 1
                    Bài 11: Chuỗi (String) | THPT Phan Chu Trinh
                    🎯 Bài toán
                    Nhập một chuỗi s (họ tên học sinh).

                    Hãy:
                    1) In ra độ dài của chuỗi
                    2) In chuỗi viết IN HOA
                    3) In chuỗi viết in thường
                    4) In 3 ký tự đầu của chuỗi (nếu có)
                    5) Kiểm tra chuỗi có chứa từ "An" hay không
                    Gợi ý: dùng len(), upper(), lower(), in
                    📝 Soạn thảo Python
                    ▶ Kết quả sẽ hiển thị ở đây...
                    # Lời giải gợi ý (Bài 11)
                    s = input("Nhap ho ten: ")
                    
                    print("Do dai:", len(s))
                    print("IN HOA:", s.upper())
                    print("in thuong:", s.lower())
                    
                    if len(s) >= 3:
                        print("3 ky tu dau:", s[:3])
                    
                    if "An" in s:
                        print("Co 'An'")
                    else:
                        print("Khong co 'An'")
                    🧾 Lịch sử chạy
                      ⚠ Ghi nhớ nhanh:
                      len(s): độ dài chuỗi
                      s[:3]: cắt 3 ký tự đầu
                      "An" in s: kiểm tra chuỗi con

                      Bài đăng phổ biến

                      💬 Bình luận

                      💬 Bình luận

                      📌 Danh sách bình luận