Bài 9.5 - Python: kỹ năng đọc đề nhanh và code gọn
Free
Khóa học Python từ Cơ bản đến Nâng cao
Chương 1: Làm quen với Python + Ôn tập I/O, biến, kiểu dữ liệu
Chương 2: Câu lệnh rẽ nhánh, vòng lặp, hàm
Chương 3: Xử lý chuỗi và danh sách nâng cao
Chương 4: Bài kiểm tra Python cơ bản + sửa bài
Chương 5: Duyệt mảng, tìm max/min, đếm
Chương 6: Thuật toán sắp xếp
Chương 7: Prefix Sum + Two Pointers
Chương 8: Backtracking cơ bản
Chương 9: Ôn tập thuật toán cơ bản + kiểm tra
Chương 10: Dynamic Programming cơ bản
Chương 11: Đệ quy và DP nâng cao
Chương 12: Đồ thị cơ bản – DFS, BFS
Chương 13: Đồ thị nâng cao – Dijkstra + Topo sort
Chương 14: Cây – Tree traversal + LCA
Chương 15: Bitmask – Kỹ thuật đại số
Chương 16: Số học + Modular Arithmetic
Chương 17: Class
Chương 18: File và Exception

Bài 9.5 - Python: kỹ năng đọc đề nhanh và code gọn
Một trong những kỹ năng cực kỳ quan trọng trong lập trình là đọc hiểu đề nhanh và viết code ngắn gọn mà đúng ý đề. Bài này sẽ giúp bạn luyện khả năng:
- Tách ý chính từ đề bài
- Phân tích input/output
- Viết code gọn gàng, súc tích nhưng dễ hiểu
1. Nhận diện đề bài quen thuộc
Khi luyện thi hoặc làm bài tập, bạn sẽ gặp lại các mẫu đề quen như:
- Tính tổng, tìm max, min
- Kiểm tra điều kiện (chẵn/lẻ, chia hết, ký tự đặc biệt)
- Đếm, lọc, sắp xếp
Ví dụ 1: Tính tổng các số chia hết cho 3 trong list
Cách làm gọn gàng:
nums = [1, 2, 3, 4, 5, 6, 9]
total = sum(x for x in nums if x % 3 == 0)
print(total) # Output: 18
Không cần
for
+if
dài dòng, dùng generator expression rất hợp lý.
2. Đọc đề → viết nhanh mẫu code
Ví dụ 2: Đếm số nguyên âm trong chuỗi
Input: "hello world"
Yêu cầu: Đếm nguyên âm
Giải pháp gọn:
s = "hello world"
count = sum(1 for c in s if c in "aeiou")
print(count) # Output: 3
Dễ đọc, không rườm rà, vẫn đầy đủ ý nghĩa.
3. Biến bài toán thành mô hình xử lý quen
Ví dụ 3: Kiểm tra chuỗi có phải palindrome không?
s = "madam"
print(s == s[::-1]) # Output: True
Không cần viết vòng lặp so sánh từng ký tự, hãy tận dụng slicing!
4. Kết hợp hàm tích hợp + toán tử ngắn
Ví dụ 4: Tìm từ dài nhất trong danh sách
words = ["cat", "banana", "apple"]
print(max(words, key=len)) # Output: banana
Kết hợp
max()
vớikey=len
để viết cực kỳ ngắn.
5. Đừng quên đọc kỹ input/output
Ví dụ 5: Đề bài cho input từ bàn phím
Yêu cầu: Nhập danh sách số cách nhau bằng khoảng trắng, in tổng các số chẵn
nums = list(map(int, input().split()))
print(sum(x for x in nums if x % 2 == 0))
6. Thủ thuật viết code Pythonic
Mục tiêu | Viết truyền thống | Viết gọn Pythonic |
---|---|---|
Đếm số chẵn | dùng for + if |
sum(1 for x in a if x % 2 == 0) |
Lọc list | dùng append() |
[x for x in a if x > 0] |
Tìm max theo điều kiện | vòng lặp kết hợp | max(a, key=some_func) |
So sánh chuỗi đảo ngược | viết vòng lặp tay | s == s[::-1] |
7. Bài tập luyện kỹ năng
Bài 1: Nhập 1 dòng các số, in ra tổng các số chia hết cho 5
nums = list(map(int, input().split()))
print(sum(x for x in nums if x % 5 == 0))
Bài 2: Nhập 1 chuỗi, in ra chuỗi chỉ gồm ký tự viết thường
s = input()
print("".join(c for c in s if c.islower()))
Tổng kết
- Học đọc đề nhanh = học cách rút ra điều kiện và hành động chính trong đề.
- Viết code gọn = học cách dùng các tính năng mạnh mẽ sẵn có của Python.
- Hãy luyện viết lại các bài quen thuộc theo phong cách ngắn gọn hơn mỗi ngày!
Khóa học liên quan

3300000
4500000
Học Ngay
Comments