1. Trang chủ
  2. Blog
  3. Python List: Cách Dùng List Trong Python Cho Người Mới
Python

Python List: Cách Dùng List Trong Python Cho Người Mới

U

Uyên Hoàng Thị Tố

Đăng ngày 06/11/2026

Python list là kiểu dữ liệu lưu nhiều giá trị trong một biến, viết trong ngoặc vuông và ngăn cách bằng dấu phẩy. List trong Python có thứ tự, sửa được và chứa được nhiều kiểu dữ liệu. Bài viết hướng dẫn cách tạo, truy cập, thêm, xóa và sắp xếp list, kèm ví dụ chạy được dành cho người mới bắt đầu.

Python list là gì và dùng để làm gì?

Khi cần lưu danh sách điểm số, tên học viên hay giá sản phẩm, bạn không muốn tạo hàng chục biến riêng lẻ. Python list giải quyết việc đó. Bạn gom các giá trị vào một biến duy nhất và xử lý chúng cùng lúc.

diem = [8, 9.5, 7, 10]
ten = ["An", "Lan", "Minh"]
hon_hop = [1, "Python", 3.14, True]

List trong Python có những đặc điểm nào?

Bạn cần nhớ bốn đặc điểm sau của list trong Python:

  • Có thứ tự: phần tử giữ đúng vị trí bạn thêm vào.

  • Sửa được: bạn thêm, đổi và xóa phần tử sau khi tạo list.

  • Cho phép trùng lặp: cùng một giá trị có thể xuất hiện nhiều lần.

  • Chứa nhiều kiểu dữ liệu: số, chuỗi, boolean, thậm chí list khác nằm chung một list.

Nếu bạn chưa quen khái niệm biến, hãy đọc bài quy tắc đặt tên biến trong Python trước.

Cách tạo python list

Có hai cách phổ biến để tạo list. Cách đầu tiên dùng cặp ngoặc vuông, cách thứ hai dùng hàm list().

Khai báo list trong Python bằng ngoặc vuông

Đây là cách ngắn và dễ đọc nhất. Bạn đặt các phần tử trong [], cách nhau bằng dấu phẩy.

so = [1, 2, 3, 4, 5]
rong = []
print(so)
print(len(rong))

Kết quả là [1, 2, 3, 4, 5] và 0. List rỗng có độ dài bằng 0, bạn thường dùng nó để thêm dữ liệu dần về sau.Tạo python list bằng ngoặc vuông và hàm list - codegym.vn

Tạo list bằng hàm list() và range()

Hàm list() chuyển một chuỗi hoặc dãy số thành list. Cách này hợp khi bạn cần dãy số có quy luật.

chu = list("abc")
day_so = list(range(1, 6))
print(chu)       # ['a', 'b', 'c']
print(day_so)    # [1, 2, 3, 4, 5]

Python list of lists là gì?

Python list of lists là list có các phần tử cũng là list. Bạn dùng nó để biểu diễn bảng hoặc ma trận.

bang = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
print(bang[1][2])   # 6

bang[1] lấy hàng thứ hai, [2] lấy phần tử thứ ba của hàng đó.

Truy cập phần tử trong python list

Mỗi phần tử của python list có một vị trí, gọi là chỉ mục (index). Chỉ mục đầu tiên là 0, không phải 1.

mau = ["đỏ", "xanh", "vàng", "tím"]
print(mau[0])     # đỏ
print(mau[2])     # vàng
print(mau[-1])    # tím

Chỉ mục âm đếm từ cuối list. -1 là phần tử cuối, -2 là phần tử kề cuối.Truy cập phần tử python list bằng chỉ mục - codegym.vn

Cắt list bằng slicing

Cú pháp list[bắt_đầu:kết_thúc] lấy một đoạn của list. Vị trí kết thúc không được tính.

so = [10, 20, 30, 40, 50]
print(so[1:4])    # [20, 30, 40]
print(so[:2])     # [10, 20]
print(so[::-1])   # [50, 40, 30, 20, 10]

Truy cập vị trí không tồn tại sẽ báo IndexError: list index out of range. Bạn dùng len(so) để kiểm tra độ dài trước khi truy cập.

Thêm, sửa và xóa phần tử trong python list

Vì list sửa được, bạn có thể thay đổi nội dung bất cứ lúc nào. Đây là nhóm thao tác dùng nhiều nhất khi làm việc với list.

Append trong Python và các cách thêm phần tử

Có ba cách thêm phần tử vào list:

  • append(x): thêm một phần tử vào cuối list.

  • insert(i, x): chèn phần tử vào vị trí i.

  • extend(ds): nối nhiều phần tử từ một list khác vào cuối.

a = [1, 2]
a.append(3)
a.insert(0, 0)
a.extend([4, 5])
print(a)   # [0, 1, 2, 3, 4, 5]

Append trong Python chỉ thêm đúng một đối tượng. Nếu bạn viết a.append([6, 7]), cả list [6, 7] trở thành một phần tử mới.

Sửa phần tử theo chỉ mục

Bạn gán giá trị mới cho vị trí cần đổi.

a = [10, 20, 30]
a[1] = 25
print(a)   # [10, 25, 30]

Hàm pop và remove để xóa phần tử

Python có ba cách xóa phần tử:

  • pop(i): xóa phần tử ở vị trí i và trả về giá trị đó. Bỏ trống i thì xóa phần tử cuối.

  • remove(x): xóa phần tử đầu tiên có giá trị bằng x.

  • del a[i]: xóa phần tử ở vị trí i, hoặc cả một đoạn.

a = [10, 20, 30, 20, 40]
a.remove(20)
print(a)        # [10, 30, 20, 40]
x = a.pop()
print(x, a)     # 40 [10, 30, 20]
del a[0]
print(a)        # [30, 20]

Nếu giá trị không có trong list, remove() báo ValueError. Hãy kiểm tra bằng if x in a: trước khi gọi.

Duyệt và sắp xếp python list

Sau khi tạo xong, bạn thường cần đọc từng phần tử hoặc xếp chúng theo thứ tự.

Duyệt list bằng vòng lặp for

Vòng lặp for đi qua từng phần tử của list. Bạn xem kỹ cú pháp ở bài Python for.

for ten in ["An", "Lan", "Minh"]:
    print("Xin chào", ten)

for i, ten in enumerate(["An", "Lan"]):
    print(i, ten)

Hàm enumerate() trả về cả vị trí lẫn giá trị, rất tiện khi bạn cần đánh số.

Sắp xếp trong Python: sort và sorted

Hai cách này khác nhau ở chỗ có đổi list gốc hay không.

Tiêu chía.sort()sorted(a)
Đổi list gốcCóKhông
Giá trị trả vềNoneList mới đã sắp xếp
Dùng khiKhông cần giữ thứ tự cũCần giữ cả list gốc
a = [3, 1, 2]
print(sorted(a))                 # [1, 2, 3]
print(sorted(a, reverse=True))   # [3, 2, 1]
a.sort()
print(a)                         # [1, 2, 3]

Muốn sắp xếp giảm dần, bạn thêm reverse=True.Sắp xếp python list bằng sort và sorted - codegym.vn

List comprehension Python: tạo list ngắn gọn

List comprehension Python tạo list mới chỉ trong một dòng. Cú pháp là [biểu_thức for phần_tử in danh_sách if điều_kiện].

binh_phuong = [x * x for x in range(1, 6)]
chan = [x for x in range(10) if x % 2 == 0]
print(binh_phuong)   # [1, 4, 9, 16, 25]
print(chan)          # [0, 2, 4, 6, 8]

Khi biểu thức quá dài, bạn nên quay lại dùng vòng lặp for thường để code dễ đọc.

Các hàm thường dùng với python list

Bảng dưới tổng hợp những hàm và method bạn gặp thường xuyên nhất.

Hàm / methodTác dụngVí dụ
len(a)Đếm số phần tửlen([1, 2, 3]) cho 3
sum(a)Tính tổng các sốsum([1, 2, 3]) cho 6
max(a), min(a)Giá trị lớn nhất, nhỏ nhấtmax([4, 9, 2]) cho 9
a.count(x)Đếm số lần x xuất hiện[1, 2, 1].count(1) cho 2
a.index(x)Vị trí đầu tiên của x[5, 6, 7].index(6) cho 1
a.reverse()Đảo ngược list tại chỗ[1, 2, 3] thành [3, 2, 1]
a.copy()Tạo bản sao của listb = a.copy()

Lưu ý khi sao chép: b = a không tạo list mới. Cả hai tên cùng trỏ vào một list, nên sửa b cũng làm a đổi theo. Hãy dùng a.copy() hoặc a[:] khi cần bản độc lập.

Lỗi thường gặp khi dùng python list

Những lỗi dưới đây xuất hiện nhiều nhất ở người mới học list:

  • IndexError: list index out of range: bạn truy cập vị trí lớn hơn len(a) - 1.

  • ValueError: list.remove(x): x not in list: giá trị cần xóa không có trong list.

  • Gán b = a rồi sửa b: list gốc bị đổi theo. Hãy dùng copy().

  • Viết a = a.sort(): sort() trả về None, nên a mất toàn bộ dữ liệu. Chỉ gọi a.sort() mà không gán.

Bài tập tự luyện với python list

Hãy tự viết code trước, rồi mới so với gợi ý.

  1. Tạo list gồm 5 số bất kỳ, in ra số lớn nhất và tổng các số.

  2. Cho a = [4, 7, 1, 7, 9], xóa tất cả số 7 khỏi list.

  3. Dùng list comprehension tạo list các số chia hết cho 3 từ 1 đến 30.

Gợi ý cho bài 3:

chia_het_3 = [x for x in range(1, 31) if x % 3 == 0]
print(chia_het_3)   # [3, 6, 9, 12, 15, 18, 21, 24, 27, 30]

Muốn luyện thêm, bạn xem bài Bài tập Python cơ bản có lời giải.

Câu hỏi thường gặp về python list

Python list khác mảng như thế nào?

List của Python chứa được nhiều kiểu dữ liệu và tự đổi kích thước. Mảng ở nhiều ngôn ngữ khác thường chỉ chứa một kiểu và có kích thước cố định.

List và tuple khác nhau ở điểm nào?

List sửa được, viết bằng ngoặc vuông []. Tuple không sửa được sau khi tạo, viết bằng ngoặc tròn ().

List có chứa được list khác không?

Có. Đó là python list of lists, thường dùng để biểu diễn bảng hoặc ma trận.

Bắt đầu thực hành với python list

Bạn đã nắm cách tạo, truy cập, thêm, xóa, sắp xếp và duyệt python list. Hãy gõ lại từng ví dụ trên máy, đổi giá trị rồi xem kết quả thay đổi thế nào.

Đăng ký học thử miễn phí để chạy code ngay trong bài học, hoặc bắt đầu với khóa Nhập môn Lập trình Python. Bạn cũng có thể gọi +84 989 534 458 để chúng tôi tư vấn lộ trình. Luyện đều mỗi ngày, bạn sẽ dùng python list thật quen tay.

Chia sẻ:
Đã sao chép!

Bài viết liên quan

HỌC PYTHON - CÔNG TY CP CODEGYM VIỆT NAM

MST: 0108104526
Địa chỉ: Căn hộ TT01.23, dự án Hải Đăng city, phường Từ Liêm, thành phố Hà Nội
Điện thoại: +84 989 534 458
Website: codegym.vn