Hot deal hosting vps vietnix tháng 2Hot deal hosting vps vietnix tháng 2
PHP
Python

Trang chủ

List trong Python là gì? Tìm hiểu một số thao tác với list

Ngôn ngữ Python là một ngôn ngữ lập trình đa mục đích, nổi tiếng với cú pháp dễ đọc, dễ học và tính ứng dụng cao. Trong lĩnh vực phát triển web, Python thường được sử dụng thông qua các framework như Django và Flask để xây dựng các ứng dụng web mạnh mẽ, bảo mật và dễ mở rộng. Trong chuyên mục này, Vietnix không chỉ cung cấp kiến thức nền tảng về ngôn ngữ Python mà còn hướng dẫn chi tiết cách xây dựng các ứng dụng web thực tế, sử dụng các framework phổ biến và áp dụng các kỹ thuật tiên tiến. Vietnix cam kết liên tục cập nhật những bài viết mới nhất về các tính năng mới của Python, các thư viện hỗ trợ hữu ích và những phương pháp tốt nhất, giúp bạn khai thác tối đa sức mạnh của Python và hoàn thiện kỹ năng lập trình web của mình.
html
CSS
javascript
sql
python
php
c
c++
bootstrap
react
mysql
reactjs
vuejs
Javascript Tutorials
12/02/2025
9 phút đọc
Theo dõi Vietnix trên

List trong Python là gì? Tìm hiểu một số thao tác với list

List trong Python cho phép lưu trữ một tập hợp các phần tử có thứ tự, có thể thay đổi giá trị và chứa các kiểu dữ liệu khác nhau. Khả năng linh hoạt này khiến List trở thành công cụ hữu ích trong nhiều tình huống lập trình. Bài viết này sẽ đi sâu vào khái niệm List trong Python, cách truy cập và thao tác với các phần tử trong List.

Các điểm chính

Khi đọc xong bài viết, bạn sẽ:

  • Hiểu rõ khái niệm “List” trong Python: Nắm được định nghĩa, đặc điểm và vai trò của List trong lập trình Python. 
  • Thành thạo các thao tác cơ bản với List: Biết cách truy cập, cập nhật, thêm, xóa phần tử trong List.
  • Nắm vững các phép toán và kỹ thuật nâng cao với List: Hiểu về indexing, slicing, ma trận và cách áp dụng chúng trên List.
  • Sử dụng thành thạo các phương thức và hàm hỗ trợ List: Biết cách sử dụng các phương thức (methods) và hàm có sẵn để thao tác với List một cách hiệu quả.

List trong Python là gì?

List là một trong những kiểu dữ liệu tích hợp sẵn (built-in data type) trong Python. Một List trong Python là một chuỗi các phần tử, được phân tách bằng dấu phẩy và đặt trong cặp ngoặc vuông []. Các phần tử trong List không nhất thiết phải cùng kiểu dữ liệu.

List trong Python là một chuỗi các phần tử được phân tách bằng dầu phẩy và đặt trong dấu ngoặc vuông
List trong Python là một chuỗi các phần tử được phân tách bằng dầu phẩy và đặt trong dấu ngoặc vuông

Ví dụ về List trong Python:

danh_sach_1 = ["An", "Vật Lý", 21, 69.75]  # List chứa chuỗi, số nguyên, số thực
danh_sach_2 = [1, 2, 3, 4, 5]         # List chứa toàn số nguyên
danh_sach_3 = ["a", "b", "c", "d"]      # List chứa các ký tự
danh_sach_4 = [25.50, True, -55, 1+2j]   # List chứa số thực, boolean, số nguyên, số phức

List là một tập hợp các phần tử có thứ tự. Mỗi phần tử trong List có một vị trí, được gọi là chỉ số (index), bắt đầu từ 0.

List trong Python tương tự như mảng (array) trong C, C++ hoặc Java. Tuy nhiên, điểm khác biệt lớn là trong C/C++/Java, các phần tử của mảng phải cùng kiểu dữ liệu. Ngược lại, List trong Python có thể chứa các phần tử thuộc nhiều kiểu dữ liệu khác nhau.

Một List trong Python có thể thay đổi được (mutable). Ta có thể truy cập bất kỳ phần tử nào từ List bằng cách sử dụng chỉ số của nó, và có thể sửa đổi phần tử đó. Ta có thể xóa một hoặc nhiều phần tử khỏi List, hoặc thêm các phần tử mới vào List. Một List có thể chứa các phần tử giống nhau ở nhiều vị trí khác nhau (nhiều chỉ số khác nhau).

Truy cập giá trị trong List

Để truy cập các giá trị trong List, bạn sử dụng dấu ngoặc vuông [] cùng với chỉ số (index) hoặc các chỉ số để lấy giá trị tại vị trí đó. Ví dụ:

trai_cay = ['táo', 'chuối', 'cam', 1997, 2000]
so_nguyen = [1, 2, 3, 4, 5, 6, 7]

print("Phần tử đầu tiên của trai_cay:", trai_cay[0])
print("Các phần tử từ 1 đến 4 của so_nguyen:", so_nguyen[1:5])

Kết quả khi chạy code:

Phần tử đầu tiên của trai_cay: táo
Các phần tử từ 1 đến 4 của so_nguyen: [2, 3, 4, 5]

Giải thích:

  • trai_cay = ['táo', 'chuối', 'cam', 1997, 2000]so_nguyen = [1, 2, 3, 4, 5, 6, 7]: Khai báo hai List, trai_cay chứa cả chuỗi và số, so_nguyen chỉ chứa số nguyên.
  • print("Phần tử đầu tiên của trai_cay:", trai_cay[0]): Dòng này truy cập phần tử đầu tiên của List trai_cay. Lưu ý rằng chỉ số trong List bắt đầu từ 0. Do đó, trai_cay[0] sẽ trả về 'táo'.
  • print("Các phần tử từ 1 đến 4 của so_nguyen:", so_nguyen[1:5]): Dòng này sử dụng “slicing” (cắt) để lấy ra một phần của List so_nguyen. so_nguyen[1:5] có nghĩa là lấy các phần tử từ chỉ số 1 (bao gồm) đến chỉ số 5 (không bao gồm). Kết quả sẽ là một List mới: [2, 3, 4, 5].

Cập nhật list

Bạn có thể cập nhật một hoặc nhiều phần tử của List bằng cách sử dụng phép gán với slicing (lát cắt) ở phía bên trái toán tử gán. Ngoài ra, bạn có thể thêm phần tử vào List bằng phương thức append(). Ví dụ:

danh sach mon hoc = ['Vật lý', 'Hóa học', 1997, 2000]
print("Giá trị tại chỉ số 2:")
print(danh_sach_mon_hoc[2])
danh_sach_mon_hoc[2] = 2001
print("Giá trị mới tại chỉ số 2:")
print(danh_sach_mon_hoc[2])

Kết quả khi chạy code:

Giá trị tại chỉ số 2:
1997
Giá trị mới tại chỉ số 2:
2001

Giải thích Code:

  • danh_sach_mon_hoc = ['Vật lý', 'Hóa học', 1997, 2000]: Dòng này tạo một List có tên danh_sach_mon_hoc, List này chứa các phần tử là các chuỗi và số.
  • print("Giá trị tại chỉ số 2:"): In ra một thông báo.
  • print(danh_sach_mon_hoc[2]): Truy cập và in ra phần tử tại chỉ số 2 của List (phần tử thứ ba, vì chỉ số bắt đầu từ 0).
  • danh_sach_mon_hoc[2] = 2001: Thay đổi giá trị của phần tử tại chỉ số 2 của List thành 2001. Đây là cách cập nhật giá trị của một phần tử trong List.
  • print("Giá trị mới tại chỉ số 2:"): In ra thông báo.
  • print(danh_sach_mon_hoc[2]): In ra giá trị mới của phần tử tại chỉ số 2 (lúc này đã là 2001).

Xóa phần tử trong list

Để xóa một phần tử trong List, bạn có thể sử dụng câu lệnh del nếu bạn biết chính xác (các) phần tử cần xóa, hoặc phương thức remove() nếu bạn không biết vị trí cụ thể của phần tử đó. Ví dụ:

list1 = ['physics', 'chemistry', 1997, 2000]
print(list1)
del list1[2]
print("Sau khi xóa giá trị tại index 2 : ")
print(list1)

Khi thực thi đoạn code trên, kết quả sẽ như sau:

[‘physics’, ‘chemistry’, 1997, 2000]
Sau khi xóa giá trị tại index 2 :
[‘physics’, ‘chemistry’, 2000]

Giải thích chi tiết:

  • list1 = ['physics', 'chemistry', 1997, 2000]: Dòng này tạo một List tên list1 chứa các phần tử: 'physics', 'chemistry', 1997, và 2000.
  • print(list1): In List list1 ban đầu ra màn hình.
  • del list1[2]: Đây là điểm quan trọng. Câu lệnh del được sử dụng để xóa phần tử tại index 2 của list1. Hãy nhớ rằng, trong Python, index của List bắt đầu từ 0. Vì vậy, phần tử có index 2 trong list11997 (phần tử thứ ba).
  • print("Sau khi xóa giá trị tại index 2 : "): Dòng này chỉ in ra một thông báo cho biết thao tác xóa đã được thực hiện.
  • print(list1): In List list1 sau khi đã xóa phần tử tại index 2.

Các phép toán trên list trong Python

Trong Python, List là một kiểu dữ liệu dạng chuỗi (sequence). Do đó, chúng ta có thể kết hợp hai List với nhau bằng toán tử +, và lặp lại một List nhiều lần bằng toán tử *. Ngoài ra, Python cũng cung cấp các toán tử kiểm tra thành phần “in” và “not in” để sử dụng với đối tượng List.

Dưới đây là một bảng tóm tắt các phép toán, kết quả, và mô tả về những thao tác có thể thực hiện trên List:

Biểu Thức PythonKết QuảMô Tả
[1, 2, 3] + [4, 5, 6][1, 2, 3, 4, 5, 6]Kết hợp (Concatenation)
['Hi!'] * 4['Hi!', 'Hi!', 'Hi!', 'Hi!']Lặp lại (Repetition)
3 in [1, 2, 3]TrueKiểm tra thành phần (Membership)

Indexing, slicing và ma trận trên list

Vì List là kiểu dữ liệu dạng chuỗi, các thao tác indexing (truy cập phần tử theo chỉ số) và slicing (lấy một phần của List) hoạt động trên List tương tự như trên chuỗi.

Giả sử chúng ta có List sau:

L = ['tao', 'chuoi', 'CAM!']
Biểu Thức PythonKết QuảMô Tả
L[2]'CAM!'Chỉ số bắt đầu từ 0
L[-2]'chuoi'Chỉ số âm: đếm ngược từ cuối List
L[1:]['chuoi', 'CAM!']Slicing: lấy các phần tử từ vị trí 1 trở đi

Các phương thức của list trong Python

Python cung cấp các phương thức sau đây cho List:

Phương ThứcMô Tả
list.append(obj)Thêm đối tượng obj vào cuối List.
list.clear()Xóa toàn bộ các phần tử của List.
list.copy()Tạo ra một bản sao của List.
list.count(obj)Đếm số lần đối tượng obj xuất hiện trong List.
list.extend(seq)Thêm các phần tử của seq (một iterable khác) vào cuối List.
list.index(obj)Trả về chỉ số (vị trí) đầu tiên của đối tượng obj trong List.
list.insert(index, obj)Chèn đối tượng obj vào List tại vị trí index.
list.pop(obj=list[-1])Xóa và trả về phần tử cuối cùng hoặc phần tử obj khỏi List.
list.remove(obj)Xóa phần tử obj đầu tiên được tìm thấy khỏi List.
list.reverse()Đảo ngược thứ tự các phần tử trong List (thay đổi ngay trên List gốc)
list.sort([func])Sắp xếp các phần tử của List, có thể sử dụng hàm func để tùy chỉnh.

Các hàm có sẵn dùng với list

Dưới đây là các hàm có sẵn (built-in functions) mà chúng ta có thể sử dụng với List:

Hàm Mô tả
cmp(list1, list2So sánh các phần tử của cả hai List. (Lưu ý: Hàm này không còn được sử dụng trong Python 3)
len(list)Trả về tổng số phần tử (độ dài) của List.
max(list)Trả về phần tử có giá trị lớn nhất trong List.
min(list)Trả về phần tử có giá trị nhỏ nhất trong List.
list(seq)Chuyển đổi một tuple thành List.

Lời kết

Chúng ta vừa cùng nhau tìm hiểu chi tiết về List trong Python, từ khái niệm, cách truy cập, cập nhật, xóa phần tử, đến các phép toán, phương thức và hàm hỗ trợ. Hy vọng rằng những kiến thức này sẽ hữu ích cho bạn trong quá trình lập trình Python.

Mọi người cũng đọc

Cao Lê Viết Tiến

PHP Leader
tại
Vietnix

Kết nối với mình qua

Icon Quote
Icon Quote

Học lập trình online cùng vietnix

Học lập trình online cùng Vietnix

PHPXem thêmThu gọn