Danh sách (List) trong Python

hướng dẫn học python tìm hiểu ngôn ngữ lập trình python nguyễn Đức mùi

Trong Python, danh sách (list) là một cấu trúc dữ liệu động, có khả năng mở rộng hoặc thu nhỏ tự động. Danh sách có thể chứa nhiều kiểu dữ liệu khác nhau, bao gồm cả danh sách khác. Điều này có thể thực hiện được vì danh sách thực chất lưu trữ các tham chiếu đến vị trí bộ nhớ thay vì lưu trữ trực tiếp giá trị tại các vị trí liên tiếp.

hướng dẫn học python tìm hiểu ngôn ngữ lập trình python nguyễn Đức mùi

1. Đặc điểm của danh sách trong Python

  • Cho phép phần tử trùng lặp
  • Có thể thay đổi (mutable) → Thêm, sửa, xóa phần tử một cách linh hoạt
  • Có thứ tự (ordered) → Duy trì thứ tự phần tử theo cách chúng được thêm vào
  • Truy cập bằng chỉ số (index) → Số thứ tự bắt đầu từ 0

Ví dụ:

a = [10, 20, 15]

print(a[0])  # Lấy phần tử đầu tiên
a.append(11)  # Thêm phần tử mới vào cuối danh sách
a.remove(20)  # Xóa phần tử có giá trị 20

print(a)

Kết quả:

10
[10, 15, 11]

2. Cách tạo danh sách trong Python

2.1. Sử dụng dấu ngoặc vuông []

# Danh sách số nguyên
a = [1, 2, 3, 4, 5]

# Danh sách chuỗi
b = ['táo', 'chuối', 'nho']

# Danh sách chứa nhiều kiểu dữ liệu
c = [1, 'xin chào', 3.14, True]

print(a)
print(b)
print(c)

Kết quả:

[1, 2, 3, 4, 5]
['táo', 'chuối', 'nho']
[1, 'xin chào', 3.14, True]

2.2. Dùng hàm list()

Chúng ta có thể tạo danh sách bằng cách chuyển đổi từ tuple, chuỗi hoặc danh sách khác.

a = list((1, 2, 3, 'xoài', 4.5))  
print(a)

Kết quả:

[1, 2, 3, 'xoài', 4.5]

2.3. Tạo danh sách có phần tử lặp lại

a = [2] * 5  # [2, 2, 2, 2, 2]
b = [0] * 7  # [0, 0, 0, 0, 0, 0, 0]

print(a)
print(b)

Kết quả:

[2, 2, 2, 2, 2]
[0, 0, 0, 0, 0, 0, 0]

3. Truy cập phần tử trong danh sách

Dùng chỉ số để truy cập phần tử. Python hỗ trợ chỉ mục âm, giúp truy cập từ cuối danh sách.

a = [10, 20, 30, 40, 50]

# Truy cập phần tử đầu tiên
print(a[0])    

# Truy cập phần tử cuối cùng
print(a[-1])

Kết quả:

10
50

4. Thêm phần tử vào danh sách

Có ba phương thức phổ biến:

  • append(x): Thêm x vào cuối danh sách
  • extend(iterable): Thêm nhiều phần tử vào cuối danh sách
  • insert(i, x): Chèn x vào vị trí i
a = []

a.append(10)  
print("Sau append(10):", a)  

a.insert(0, 5)
print("Sau insert(0, 5):", a) 

a.extend([15, 20, 25])  
print("Sau extend([15, 20, 25]):", a) 

Kết quả:

Sau append(10): [10]
Sau insert(0, 5): [5, 10]
Sau extend([15, 20, 25]): [5, 10, 15, 20, 25]

5. Cập nhật phần tử trong danh sách

Dùng chỉ số để thay đổi giá trị của một phần tử.

a = [10, 20, 30, 40, 50]

# Cập nhật phần tử thứ hai
a[1] = 25 

print(a)  

Kết quả:

[10, 25, 30, 40, 50]

6. Xóa phần tử khỏi danh sách

Có ba cách phổ biến:

  • remove(x): Xóa phần tử đầu tiên có giá trị x
  • pop(i): Xóa phần tử tại vị trí i (nếu không có, sẽ xóa phần tử cuối)
  • del list[i]: Xóa phần tử tại vị trí i
a = [10, 20, 30, 40, 50]

a.remove(30)  
print("Sau remove(30):", a)

popped_val = a.pop(1)  
print("Phần tử bị xóa:", popped_val)
print("Sau pop(1):", a) 

del a[0]  
print("Sau del a[0]:", a)  

Kết quả:

Sau remove(30): [10, 20, 40, 50]
Phần tử bị xóa: 20
Sau pop(1): [10, 40, 50]
Sau del a[0]: [40, 50]

7. Duyệt danh sách (Iteration)

Dùng vòng lặp for để lặp qua các phần tử trong danh sách.

a = ['táo', 'chuối', 'nho']

for item in a:
    print(item)

Kết quả:

táo
chuối
nho

8. Danh sách lồng nhau (Nested List)

Danh sách có thể chứa danh sách khác, giúp biểu diễn dữ liệu dạng bảng.

matrix = [
    [1, 2, 3],
    [4, 5, 6],
    [7, 8, 9]
]

# Truy cập phần tử hàng 2, cột 3
print(matrix[1][2]) 

Kết quả:

6

Tóm tắt

Hành độngPhương thức
Thêm phần tửappend(), extend(), insert()
Xóa phần tửremove(), pop(), del
Cập nhật phần tửSử dụng chỉ số list[i] = new_value
Truy cập phần tửlist[i], list[-i]
Lặp qua danh sáchfor loop

Danh sách là một trong những cấu trúc dữ liệu quan trọng nhất trong Python, giúp lưu trữ và xử lý dữ liệu một cách hiệu quả. 🚀

Menu Python>>

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

error: Content is protected !!
Hotline: 039.2266.928
Khóa học Toefl
Phone now