Bỏ qua và tới nội dung chính
Khoá học Unica, Gitiho, Udemy… chỉ từ 49.000đ
Trang chủ
  • python
  • lap-trinh
  • tu-hoc
  • ke-hoach

Tự học Python từ con số 0 trong 3 tháng: kế hoạch theo tuần

Kế hoạch tự học Python 12 tuần cho người chưa biết lập trình: mỗi tuần học gì, làm bài tập gì, dự án nhỏ nào và khi nào nên dừng lại ôn thay vì học tiếp.

Khoá Học Sinh Viên9 phút đọc

Tôi bắt đầu học Python ở tuổi 26, không có nền lập trình, mục tiêu ban đầu chỉ là tự động hoá vài báo cáo Excel. Ba tháng đầu tôi học theo kiểu nhảy cóc: xem video về machine learning khi chưa viết nổi vòng lặp, rồi nản. Lần thứ hai tôi làm một kế hoạch theo tuần và đi theo nó, kết quả khác hẳn. Bài này là kế hoạch đó, đã chỉnh lại sau khi hướng dẫn vài bạn khác, dành cho người chưa biết gì và có khoảng một giờ mỗi ngày.

Trước khi bắt đầu: cài đặt và kỳ vọng thực tế

Về công cụ, bạn cần cài Python phiên bản 3 mới nhất và một trình soạn thảo. Visual Studio Code là lựa chọn phổ biến và miễn phí.

Về kỳ vọng, ba tháng với một giờ mỗi ngày là khoảng 90 giờ. Với 90 giờ, bạn sẽ viết được chương trình vài trăm dòng có cấu trúc, xử lý được file, gọi được API đơn giản, và đủ nền để chọn hướng chuyên sâu. Bạn chưa thể xin việc lập trình viên chỉ với chừng đó, và ai nói ngược lại là đang bán thứ gì đó. Nhưng 90 giờ đi đúng thứ tự là một nền rất chắc.

Nguyên tắc xuyên suốt: mỗi ngày phải có ít nhất 30 phút tự gõ mã, không phải xem người khác gõ. Lập trình học bằng tay, không học bằng mắt.

Tháng 1: nền tảng ngôn ngữ

Tuần 1: biến, kiểu dữ liệu, phép toán, nhập xuất

Học cách chạy một file Python, in ra màn hình, nhận dữ liệu từ bàn phím, các kiểu số, chuỗi, logic, và cách chuyển đổi giữa chúng. Bài tập: máy tính đổi đơn vị, chương trình tính tiền điện theo bậc, chương trình hỏi tên tuổi và in ra câu chào theo nhiều định dạng.

Tuần 2: điều kiện và vòng lặp

Câu lệnh if, elif, else; vòng lặp for và while; break, continue; vòng lặp lồng nhau. Bài tập: kiểm tra số nguyên tố, in bảng cửu chương theo định dạng đẹp, trò chơi đoán số với số lần đoán giới hạn, vẽ tam giác bằng dấu sao.

Tuần 3: danh sách, từ điển, chuỗi

List, tuple, dict, set và các thao tác thường dùng: thêm, xoá, duyệt, sắp xếp, lọc; cắt chuỗi, tách và nối chuỗi, định dạng chuỗi với f-string. Bài tập: quản lý danh sách việc cần làm trong bộ nhớ, đếm số lần xuất hiện của mỗi từ trong một đoạn văn, đảo ngược và kiểm tra chuỗi đối xứng, tính điểm trung bình cho một lớp từ dict.

Tuần 4: hàm và cách chia nhỏ bài toán

Định nghĩa hàm, tham số, giá trị trả về, phạm vi biến, tham số mặc định. Quan trọng hơn cú pháp là tư duy: nhìn một bài toán và chia nó thành các hàm nhỏ mỗi hàm làm một việc. Bài tập: viết lại tất cả bài tập ba tuần trước bằng hàm; làm một chương trình quản lý chi tiêu cá nhân với các hàm thêm khoản chi, xem tổng theo loại, tìm khoản lớn nhất. Cuối tuần 4, hãy dừng lại một đến hai ngày để ôn thay vì học tiếp, vì tháng 2 sẽ xây trên tất cả những gì ở đây.

Tháng 2: viết chương trình có cấu trúc

Tuần 5: làm việc với file và xử lý lỗi

Đọc ghi file văn bản, file CSV, file JSON; đường dẫn; try, except, finally. Bài tập: chương trình chi tiêu ở tuần 4 giờ lưu vào file và đọc lại khi mở; đọc một file CSV điểm sinh viên và xuất báo cáo tổng kết; xử lý các trường hợp file không tồn tại hoặc dữ liệu sai định dạng mà không sập chương trình.

Tuần 6: module, thư viện chuẩn và pip

Tách mã ra nhiều file và import; làm quen các module chuẩn hay dùng như datetime, os, random, math, collections; cài thư viện bên ngoài bằng pip và dùng môi trường ảo. Bài tập: tách chương trình chi tiêu thành ba file; viết công cụ đổi tên hàng loạt file trong một thư mục; viết chương trình tính số ngày đến một sự kiện.

Tuần 7: lập trình hướng đối tượng ở mức đủ dùng

Lớp, đối tượng, thuộc tính, phương thức, kế thừa cơ bản. Không cần đi sâu vào mọi khái niệm, chỉ cần hiểu khi nào dùng class giúp mã gọn hơn. Bài tập: mô hình hoá tài khoản ngân hàng với nạp, rút, xem lịch sử; viết lại chương trình chi tiêu với class Transaction và class Ledger.

Tuần 8: dự án nhỏ tổng hợp tháng 2

Chọn một trong các đề: công cụ quản lý thư viện sách cá nhân chạy trong terminal, có lưu file; chương trình kiểm tra từ vựng tiếng Anh theo kiểu thẻ ghi nhớ, có thống kê; công cụ gộp nhiều file CSV thành một và tạo báo cáo tóm tắt. Yêu cầu: có hàm, có class ở nơi hợp lý, có xử lý lỗi, có lưu dữ liệu.

Tháng 3: chọn một hướng và làm dự án

Đến đây, Python là chung nhưng ứng dụng thì rẽ nhánh. Hãy chọn đúng một hướng cho bốn tuần cuối. Chọn hai hướng cùng lúc là cách chắc chắn nhất để không xong hướng nào.

Hướng A: xử lý dữ liệu và tự động hoá văn phòng

Học pandas để đọc, lọc, nhóm, nối dữ liệu; openpyxl để ghi Excel có định dạng; matplotlib để vẽ biểu đồ cơ bản. Dự án: lấy các file báo cáo bán hàng hàng tháng, tự động gộp, tính các chỉ số và xuất ra một file Excel tổng hợp kèm biểu đồ. Đây là hướng nhiều người đi làm chọn và dùng được ngay.

Hướng B: lấy dữ liệu từ web và gọi API

Học requests, hiểu JSON và HTTP ở mức cơ bản, BeautifulSoup để đọc HTML. Dự án: lấy dữ liệu từ một API công khai như thời tiết hoặc tỉ giá, lưu định kỳ vào file và gửi tóm tắt; hoặc thu thập danh sách bài viết từ một trang tin và thống kê chủ đề. Chú ý tôn trọng điều khoản của trang bạn lấy dữ liệu.

Hướng C: ứng dụng web nhỏ

Học Flask hoặc FastAPI ở mức tạo vài đường dẫn, nhận dữ liệu từ form, trả về trang HTML đơn giản, lưu vào SQLite. Dự án: đưa chương trình quản lý chi tiêu lên web, có thêm, xem, xoá.

Dù chọn hướng nào, tuần 9 và 10 học công cụ qua ví dụ nhỏ, tuần 11 và 12 làm dự án và viết một file README mô tả cách chạy. Đưa mã lên GitHub để quen với Git ở mức cơ bản.

Cách học mỗi ngày để không bỏ cuộc

  • Cố định giờ học, cùng một khung giờ mỗi ngày. Ý chí không đáng tin bằng thói quen.
  • Mỗi buổi bắt đầu bằng việc làm lại một bài hôm qua trong 10 phút, không nhìn đáp án.
  • Khi gặp lỗi, đọc thông báo lỗi từ dòng cuối lên và thử tự sửa 15 phút trước khi tìm kiếm. Kỹ năng đọc lỗi quan trọng ngang kỹ năng viết mã.
  • Dùng trợ lý AI để giải thích lỗi và khái niệm, nhưng tự gõ lại mã thay vì sao chép, nếu không bạn sẽ không nhớ gì sau một tuần.

Lỗi hay gặp

  • Xem khoá học 30 giờ liên tục mà không làm bài, sau đó không viết nổi chương trình 20 dòng.
  • Học nhiều thư viện ở tháng 1 trong khi chưa vững vòng lặp và hàm.
  • Sao chép mã từ mạng vào và sửa mò đến khi chạy được, không hiểu tại sao.
  • Đổi hướng liên tục: tuần này web, tuần sau AI, tuần sau nữa game.

Nếu bạn muốn có người dẫn qua ba tháng này, hãy chọn khoá Python cho người mới có nhiều bài tập và dự án nhỏ, giảng viên gõ mã trực tiếp thay vì chiếu slide. Trên khoahocsinhvien.com có vài khoá Python từ cơ bản đến nâng cao, bạn có thể xem ở phần khoá liên quan. Nhưng hãy dùng khoá học như bản đồ, còn đôi chân vẫn là một giờ gõ mã mỗi ngày của bạn.

Sau 3 tháng bạn ở đâu

Bạn đọc hiểu được mã Python của người khác ở mức cơ bản, tự viết chương trình vài trăm dòng có cấu trúc, biết tìm và dùng thư viện cho việc cần làm, và có một đến hai dự án nhỏ để kể. Từ đây, hướng dữ liệu đi tiếp sang SQL và phân tích, hướng web đi tiếp sang cơ sở dữ liệu và framework đầy đủ, hướng tự động hoá có thể dừng lại và dùng ngay trong công việc. Ba tháng không biến bạn thành lập trình viên, nhưng biến Python thành một công cụ bạn thực sự dùng được, và đó là mục tiêu thực tế nhất.

Câu hỏi thường gặp

Không giỏi toán có học Python được không?

Được. Phần lớn chương trình trong ba tháng đầu chỉ dùng cộng trừ nhân chia và logic cơ bản. Toán chỉ thực sự cần khi bạn đi sâu vào khoa học dữ liệu hoặc thuật toán, và lúc đó bạn học bù phần cần thiết, không cần học lại toàn bộ.

Nên học Python bằng tiếng Việt hay tiếng Anh?

Giai đoạn đầu học bằng tiếng Việt giúp bạn tập trung vào khái niệm thay vì vật lộn với ngôn ngữ. Nhưng từ tháng 2, hãy tập đọc tài liệu và thông báo lỗi bằng tiếng Anh, vì gần như mọi tài liệu thư viện và câu trả lời trên các diễn đàn đều bằng tiếng Anh.

Một giờ mỗi ngày có ít quá không?

Một giờ đều đặn mỗi ngày tốt hơn bảy giờ vào Chủ nhật, vì lập trình cần lặp lại thường xuyên để thành phản xạ. Nếu có thêm thời gian, hãy dùng để làm thêm bài tập chứ không phải để xem thêm video.

Học Python xong có xin được việc không?

Ba tháng đầu là nền, chưa phải mức xin việc lập trình viên. Tuy nhiên, với hướng xử lý dữ liệu và tự động hoá, bạn có thể dùng ngay trong công việc hiện tại và đó là giá trị thấy được sớm nhất. Để chuyển hẳn sang nghề lập trình hoặc phân tích dữ liệu, hãy tính thêm ít nhất vài tháng học chuyên sâu và một vài dự án lớn hơn.

Cần khoá học cho chủ đề này?

800+ khoá học giá sinh viên, nhận Google Drive ngay sau thanh toán.

Xem tất cả khoá học
Gợi ý

Khoá học liên quan

Xem tất cả
Đọc tiếp

Bài viết khác

Xem tất cả bài viết