
Python là gì? Ngôn ngữ Python dùng để làm gì
AIDev TeamTham vấn chuyên môn: Nguyễn Việt Chung
Đăng 14 phút đọc3 lượt xem
Mục lục · 21
Python là gì? Đó là một ngôn ngữ lập trình miễn phí, cú pháp gần với tiếng Anh, được dùng từ tự động hóa việc văn phòng đến phân tích dữ liệu và AI. Bài có 5 đoạn code ngắn chạy thật trên Python 3.14 kèm kết quả, số liệu về độ phổ biến của Python tháng 10/2026 và vài lời khuyên nếu bạn đang phân vân có nên học hay không.
Python là ngôn ngữ lập trình bậc cao, miễn phí, do Guido van Rossum công bố lần đầu tháng 2/1991. Người ta dùng Python để tự động hóa việc lặp lại trên máy tính, xử lý file Excel và dữ liệu, viết phần server cho web. Mảng nổi bật nhất hiện nay là machine learning và AI. Python đang đứng đầu chỉ số TIOBE tháng 10/2026 với 19,23%.
Trả lời "Python là gì" bằng một định nghĩa thì dễ, nên bài này làm thêm một việc. Mình viết 5 đoạn code ngắn cho 5 việc người ta hay dùng Python để làm và chạy chúng ngày 18/10/2026 trên Mac M4 Pro với Python 3.14.7. Ngay dưới mỗi đoạn là kết quả thật khi chạy.
Vài điều nên biết trước:
Python miễn phí, kể cả dùng trong sản phẩm thương mại.
Một đoạn code Python làm một việc có ích thường chỉ dài 5 đến 15 dòng, như các ví dụ dưới đây.
Sức mạnh của Python nằm ở library: pandas cho bảng dữ liệu, matplotlib cho biểu đồ, scikit-learn cho machine learning.
Vòng lặp viết bằng Python thuần chạy chậm hơn ngôn ngữ biên dịch. Cuối bài có số đo so sánh với numpy, một library có lõi viết bằng C.
Python là gì?
Theo Python FAQ chính thức, Python là ngôn ngữ lập trình thông dịch, tương tác và hướng đối tượng, chạy được trên Windows, macOS và Linux. Guido van Rossum bắt đầu viết Python vào kỳ nghỉ Giáng sinh năm 1989 và đăng bản đầu tiên lên USENET tháng 2/1991. Tên Python lấy từ "Monty Python's Flying Circus", một chương trình hài của BBC thập niên 1970. Lúc bắt đầu viết ngôn ngữ này, Guido đang đọc kịch bản của chương trình đó.
Python thuộc quyền quản lý của Python Software Foundation (PSF) và được phát hành theo PSF License. Giấy phép này cho phép dùng, sửa, bán sản phẩm có chứa Python mà không phải trả phí, miễn là giữ thông báo bản quyền. Theo trang tải của python.org, tính đến ngày 18/10/2026 bản mới nhất là Python 3.15.0, ra ngày 09/10/2026. Nhánh 3.14 vẫn đang được vá lỗi và còn được hỗ trợ bảo mật tới tháng 10/2030.
Python thuộc loại ngôn ngữ gì?
Người ta hay mô tả Python bằng bốn đặc điểm:
Bậc cao: bạn viết
for f in thu_muc.iterdir()chứ không phải tự cấp phát và giải phóng bộ nhớ như khi viết C.Thông dịch: bạn chạy thẳng file
.pybằng lệnhpython, không cần bước biên dịch ra file chạy riêng.Kiểu động: bạn không phải khai báo trước một biến là số hay chuỗi, vì Python tự nhận ra khi chạy.
Đa mô hình: bạn viết theo kiểu thủ tục, hướng đối tượng hay lập trình hàm đều được.
Thông dịch và kiểu động làm Python dễ viết nhưng cũng là lý do nó chạy chậm hơn ngôn ngữ biên dịch. Ở phần nhược điểm cuối bài, mình sẽ đo chênh lệch này.
Ngôn ngữ Python dùng để làm gì?
Bảng dưới đây gom những việc người mới hay hỏi Python có làm được không, kèm library thường dùng cho từng việc và ví dụ tương ứng trong bài:
Việc | Library thường dùng | Ví dụ trong bài |
|---|---|---|
Tự động hóa việc lặp lại trên máy |
| sắp xếp thư mục Tải về |
Đọc, ghi Excel và làm báo cáo | pandas, openpyxl | tổng doanh thu quán cà phê |
Lấy dữ liệu từ web, gọi API | requests | dự báo thời tiết Hà Nội |
Vẽ biểu đồ, phân tích dữ liệu | matplotlib, pandas | biểu đồ doanh thu theo món |
Machine learning, AI | scikit-learn, PyTorch | model nhận dạng chữ số viết tay |
Phần server của web | Django, Flask, FastAPI | không có trong bài |
Mình không làm ví dụ cho mảng web vì một trang web chạy được còn cần phần giao diện viết bằng HTML và JavaScript. Với bốn mảng đầu, người mới học khoảng hai tháng là tự làm được. Đó cũng là lý do Python hợp làm ngôn ngữ đầu tiên.
Python làm được gì? Xem 5 ví dụ chạy thật
Năm đoạn code dưới đây chạy trong một virtual environment trên Mac, với pandas 3.0.6, openpyxl 3.1.5, requests 2.34.2, matplotlib 3.11.2, scikit-learn 1.9.1. Trên Windows bạn chạy y hệt, chỉ khác lệnh kích hoạt venv.
1. Tự động sắp xếp thư mục Tải về
Thư mục Tải về của ai cũng lộn xộn: hóa đơn PDF, ảnh, file Excel, bộ cài. Mình tạo một thư mục thử có 12 file lẫn lộn, rồi để Python chia vào thư mục con theo đuôi file:
from pathlib import Path
NHOM = {".pdf": "PDF", ".jpg": "Anh", ".png": "Anh", ".xlsx": "Excel",
".docx": "Word", ".pptx": "Slide"}
thu_muc = Path("Tai_ve")
for f in thu_muc.iterdir():
if f.is_file():
dich = thu_muc / NHOM.get(f.suffix.lower(), "Khac")
dich.mkdir(exist_ok=True)
f.rename(dich / f.name)
print(f"{f.name:<24} -> {dich.name}/")

Đoạn này chỉ dùng pathlib, một module có sẵn khi cài Python nên không cần cài thêm gì. File nào không có trong bảng NHOM (như .mp3, .dmg) sẽ được chuyển vào thư mục Khac. Muốn thêm loại file, bạn chỉ cần thêm một cặp đuôi file và tên thư mục vào dict NHOM ở đầu đoạn code.
2. Đọc file Excel và làm báo cáo
Đây là việc dân văn phòng hay hỏi. Mình tạo file don_hang.xlsx gồm 300 dòng đơn hàng mẫu của một quán cà phê trong 3 tháng (dữ liệu giả, sinh bằng code). Đoạn code dưới đây đọc file và tính thành tiền cho từng dòng. Sau đó nó cộng doanh thu theo món và theo tháng, rồi ghi kết quả ra một file Excel mới:
import pandas as pd
df = pd.read_excel("don_hang.xlsx")
df["Thành tiền"] = df["Số ly"] * df["Đơn giá"]
df["Tháng"] = pd.to_datetime(df["Ngày"]).dt.strftime("%m/%Y")
bang = df.pivot_table(index="Món", columns="Tháng", values="Thành tiền", aggfunc="sum")
print(f"Đọc {len(df)} dòng đơn hàng")
print(bang)
bang.to_excel("bao_cao_doanh_thu.xlsx")

pivot_table làm đúng việc của PivotTable trong Excel, chỉ là viết bằng một dòng. Cái lợi thật sự thấy rõ vào tháng sau: khi có file đơn hàng mới, bạn chỉ cần chạy lại lệnh là có báo cáo, không cần kéo thả lại từ đầu. Muốn làm một báo cáo đầy đủ hơn, bài Python cho Excel gộp 12 file bán hàng thành một file có định dạng và biểu đồ, kèm số đo thời gian chạy khi file to lên.
Lần đầu chạy đoạn này trong một môi trường chỉ cài pandas, mình gặp lỗi:
ModuleNotFoundError: No module named 'openpyxl'
ImportError: `Import openpyxl` failed. Use pip or conda to install the openpyxl package.

pandas không tự đọc được file .xlsx mà gọi sang library openpyxl, nhưng openpyxl lại không được cài kèm pandas. Chạy pip install openpyxl là xong. Người mới hay gặp lỗi này vì hướng dẫn trên mạng thường chỉ ghi pip install pandas. Còn nếu đã cài pandas mà chạy vẫn báo No module named 'pandas', bạn xem bài cài pandas và sửa lỗi No module named pandas.
3. Gọi API lấy dự báo thời tiết
API là cách một chương trình hỏi dữ liệu từ máy chủ khác. Ví dụ này lấy nhiệt độ cao nhất và khả năng mưa trong 7 ngày tới ở Hà Nội từ Open-Meteo, một API thời tiết miễn phí không cần đăng ký:
import requests
r = requests.get("https://api.open-meteo.com/v1/forecast", params={
"latitude": 21.03, "longitude": 105.85, # Hà Nội
"daily": "temperature_2m_max,precipitation_probability_max",
"timezone": "Asia/Bangkok", "forecast_days": 7}, timeout=10)
d = r.json()["daily"]
for ngay, nhiet, mua in zip(d["time"], d["temperature_2m_max"], d["precipitation_probability_max"]):
print(f"{ngay} cao nhất {nhiet:>4.1f}°C khả năng mưa {mua:>3}%")

Mình chạy đoạn này ngày 18/10/2026 nên số trên ảnh là dự báo của hôm đó. Bạn chạy lại sẽ ra số khác. Theo cách tương tự, bạn có thể dùng Python để lấy tỷ giá, giá vàng, dữ liệu chứng khoán hoặc gửi tin nhắn sang Telegram, miễn là dịch vụ đó có API.
4. Vẽ biểu đồ từ dữ liệu
Đã có bảng doanh thu từ ví dụ 2 thì để vẽ biểu đồ, bạn chỉ cần thêm vài dòng matplotlib:
import pandas as pd
import matplotlib.pyplot as plt
bang = pd.read_excel("bao_cao_doanh_thu.xlsx", index_col="Món")
ax = (bang / 1_000_000).T.plot(kind="bar", figsize=(8, 4.5), rot=0)
ax.set_title("Doanh thu theo món, tháng 8–10/2026 (dữ liệu mẫu)")
ax.set_ylabel("triệu đồng")
plt.tight_layout()
plt.savefig("doanh_thu.png", dpi=200)
Ảnh dưới đây chính là file doanh_thu.png mà đoạn code xuất ra, mình không chỉnh sửa gì thêm:

Chữ tiếng Việt có dấu hiện đúng với font mặc định của matplotlib nên không cần cấu hình thêm. Biểu đồ trông khá thô, nhưng muốn đổi màu, cỡ chữ hay kiểu biểu đồ thì bạn chỉ cần thêm tham số. Nếu muốn biết làm dữ liệu bằng Python cần học những gì, bạn đọc bài Data Analyst cần học gì. Bài đó nói kỹ hơn và gợi ý học theo thứ tự Excel, SQL rồi Python.
5. Train một model machine learning nhỏ
Việc cuối là thứ khiến Python phổ biến như hiện nay. scikit-learn có sẵn một bộ dữ liệu gồm 1.797 ảnh chữ số viết tay cỡ 8×8 điểm ảnh. Đoạn dưới cho model học từ 80% số ảnh, rồi thử đoán 20% còn lại mà model chưa thấy:
from sklearn.datasets import load_digits
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LogisticRegression
X, y = load_digits(return_X_y=True) # 1.797 ảnh chữ số viết tay 8x8
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
model = LogisticRegression(max_iter=5000)
model.fit(X_train, y_train)
print("Số ảnh train/test:", len(X_train), "/", len(X_test))
print(f"Accuracy trên ảnh chưa thấy: {model.score(X_test, y_test):.3f}")
print("5 ảnh đầu, đoán:", model.predict(X_test[:5]), "đúng:", y_test[:5])

Model đoán đúng 97,5% số ảnh chưa từng thấy. Đây là bài toán dễ và ảnh rất nhỏ, nên con số này không nói được gì về các bài toán AI thực tế. Nhưng cách làm thì giống hệt: chia dữ liệu, cho model học, rồi đo kết quả trên phần dữ liệu model chưa thấy. Muốn biết sau Python cần học tiếp những gì để đi tới AI, bạn xem bài lộ trình AI Engineer.
Python có phổ biến không?
Có, và đo theo cách nào thì Python cũng đứng trong nhóm đầu. Ba nguồn hay được trích là TIOBE, khảo sát của Stack Overflow và báo cáo Octoverse của GitHub. Mỗi nguồn đo một thứ khác nhau, nên phải đặt cạnh nhau mới thấy đủ bức tranh:
Nguồn (bản mới nhất) | Đo cái gì | Vị trí của Python |
|---|---|---|
TIOBE Index 10/2026 | số trang web nhắc tới ngôn ngữ trên công cụ tìm kiếm | hạng 1, 19,23% |
lập trình viên trả lời đã dùng ngôn ngữ nào | hạng 4, 58,0%, sau JavaScript (62,0%), SQL (58,4%), HTML/CSS (58,2%) | |
số người đóng góp code trên GitHub | hạng 2, khoảng 2,6 triệu người, tăng 48% so với năm trước |

Ngoài bảng trên, có hai điểm bạn nên biết thêm. Thứ nhất, tỉ lệ của Python trên TIOBE giảm 5,23 điểm so với tháng 10/2025, dù Python vẫn dẫn đầu với khoảng cách xa. Thứ hai, trên GitHub, TypeScript đã vượt Python từ tháng 8/2025. Dù vậy, theo GitHub, Python vẫn là ngôn ngữ chính của mảng AI: gần một nửa số repo AI mới tạo trong năm viết bằng Python. Mình xem các số liệu này ngày 18/10/2026, khi Octoverse bản 2026 chưa ra.
Ở Việt Nam, khi đọc 35 tin tuyển dụng AI Engineer ngày 11/10/2026 cho bài AI Engineer là gì, mình đếm được 30 tin yêu cầu biết Python.
Python có nhược điểm gì?
Nhược điểm lớn nhất là tốc độ khi chạy vòng lặp bằng Python thuần. Mình thử cộng bình phương của 10 triệu số đầu tiên theo hai cách: vòng for thường và numpy, library có lõi viết bằng C. Để đoạn code gọn, mình lược bớt dòng import numpy as np và phần đo thời gian bằng time.perf_counter():
N = 10_000_000
tong = 0
for i in range(N):
tong += i * i # vòng for thuần Python
a = np.arange(N, dtype=np.int64)
tong_np = int((a * a).sum()) # numpy

numpy nhanh hơn khoảng 37 lần (0,015 giây so với 0,55 giây). Nhưng nhìn kết quả thì numpy sai: đáp án đúng là 333.333.283.333.335.000.000, lớn hơn mức tối đa mà kiểu int64 chứa được (khoảng 9,2 × 10¹⁸), nên số bị tràn mà không có cảnh báo nào. Số nguyên của Python thì lớn bao nhiêu cũng được. Trong thực tế, người ta cũng dùng Python theo cách này: giao phần tính nặng cho library viết bằng C và viết phần điều khiển bằng Python. Điều cần nhớ là phải biết giới hạn của library mình dùng.
Những trường hợp Python không phải lựa chọn đầu tiên:
Làm app iPhone, Android: nên dùng Swift (iPhone) hoặc Kotlin (Android).
Làm giao diện web chạy trên trình duyệt: phải học JavaScript.
Làm game và phần mềm cần tốc độ tối đa: nên dùng C++, C# hoặc Rust.
Chỉ cần xử lý vài bảng tính mỗi tháng: Excel có khi là đủ, vì công sức bỏ ra để học Python lớn hơn cái lợi thu được.
Có nên học Python không?
Nên, nếu bạn thuộc một trong ba nhóm: người làm văn phòng muốn bớt việc lặp lại với Excel và file, người muốn làm phân tích dữ liệu, hoặc người muốn đi theo machine learning và AI. Với nhóm thứ ba thì gần như không có lựa chọn khác, vì các library chính của AI như PyTorch, scikit-learn đều được dùng bằng Python.
Nếu đích của bạn là app di động hay game thì nên học thẳng ngôn ngữ của mảng đó. Sau này cần làm dữ liệu hay AI thì học thêm Python cũng chưa muộn. Còn nếu chưa biết mình muốn làm gì, Python vẫn là lựa chọn an toàn cho ngôn ngữ đầu tiên: cú pháp ít ký hiệu, và những kỹ năng học được có thể dùng lại ở hầu hết các mảng.
Khi đã biết Python là gì, bạn đọc tiếp bài học Python từ số 0 để biết nên học theo thứ tự nào, cài đặt ra sao và mất bao lâu. Bài đó chia việc học thành 8 chặng, từ biến, vòng lặp đến OOP. Nếu muốn chọn sách và tài liệu đọc kèm, bạn xem bài giáo trình Python cho người mới.
Câu hỏi thường gặp
Python có miễn phí không, có bản quyền không?
Python miễn phí cho mọi mục đích, kể cả thương mại. Mã nguồn Python phát hành theo PSF License, một giấy phép chỉ yêu cầu giữ thông báo bản quyền. Riêng logo Python là nhãn hiệu của PSF. Muốn dùng logo này trên sản phẩm bán ra, bạn phải xin phép PSF.
Python có dễ học không?
Python thuộc nhóm dễ học nhất cho người mới vì cú pháp ít ký hiệu và gần tiếng Anh. Sau vài tuần, người mới thường đã tự viết được chương trình nhỏ như ví dụ sắp xếp thư mục. Cái khó là đọc hiểu thông báo lỗi và chia bài toán thành từng bước. Hai kỹ năng này chỉ lên tay khi bạn tự gõ code nhiều.
Nên học Python hay C++ trước?
Nếu mục tiêu của bạn là dữ liệu, tự động hóa hay AI, hãy học Python trước. C++ hợp với người học khoa học máy tính bài bản hoặc muốn làm game, phần mềm cần tốc độ, nhưng người học phải lo nhiều thứ hơn như kiểu dữ liệu, quản lý bộ nhớ và biên dịch. Với đa số người mới, học Python trước rồi chuyển sang C++ dễ hơn đi theo chiều ngược lại.
Học Python mất bao lâu?
Nếu học 5 đến 6 giờ mỗi tuần, bạn cần khoảng 6 đến 8 tuần để nắm phần nền. Lúc đó bạn đã viết được các đoạn như ví dụ 1 đến 3 trong bài. Lịch học chi tiết cho từng chặng có trong bài Học Python từ số 0 đã nhắc ở trên.
Không cài gì có chạy Python được không?
Được. Google Colab cho phép chạy Python ngay trên trình duyệt, chỉ cần một tài khoản Google. Colab cũng cài sẵn pandas, matplotlib và scikit-learn. Khi cần làm việc với file trên máy như ví dụ sắp xếp thư mục, bạn vẫn nên cài Python lên máy. Cài Python xong, bạn cần thêm một phần mềm để viết code. Bài phần mềm lập trình Python so VS Code, PyCharm và Thonny cho người mới.
Đọc tiếp
Học Python từ số 0: cách cài đặt và 8 chặng học theo thứ tự.
Data Analyst cần học gì: Python được dùng thế nào trong công việc phân tích dữ liệu.
Lộ trình AI Engineer: đi từ Python đến machine learning và LLM.
Nếu bạn muốn học Python bằng sách tiếng Việt, ebook Python từ số 0 của AIDev dạy từ cài đặt đến OOP qua các bài toán đời thường như tính tiền điện hay ghi sổ chi tiêu. Sách có 52 bài tập kèm lời giải. Trên trang sách có bản đọc thử 59 trang để bạn xem cách viết trước khi mua.
Toàn bộ code trong bài được chạy ngày 18/10/2026 trên Mac M4 Pro, macOS 27.0.1, Python 3.14.7, pandas 3.0.6, openpyxl 3.1.5, requests 2.34.2, matplotlib 3.11.2, scikit-learn 1.9.1, numpy 2.5.4. Dữ liệu đơn hàng là dữ liệu mẫu sinh bằng code. Mình xem số liệu của TIOBE, Stack Overflow, GitHub và python.org cùng ngày.
Chuyên mục
Học PythonTham vấn chuyên môn
Nhà sáng lập AIDev và VietPlatform · Thạc sĩ AI MSE
- Tốt nghiệp thủ khoa xuất sắc Thạc sĩ AI MSE.
- Đồng sáng lập, CTO E-University, SVOnline: số hóa 10+ đại học, 40.000+ sinh viên.
- Xây hệ thống AI cho doanh nghiệp tại VietPlatform.


