Skip to content

List

Published: at 12:51 PMSuggest Changes

Table of contents

Open Table of contents

1. Định nghĩa và tính chất

1.1. Định nghĩa

List ở trong Python được dùng để lưu trữ nhiều giá trị trong một biến duy nhất, mà vẫn có thể truy cập từng giá trị riêng lẻ.

Khác với các ngôn ngữ khác Python không yêu cầu các phần tử trong list phải cùng 1 kiểu dữ liệu.

Do đó, list có thể được cài đặt như sau:

list = [1, "hello", 3.14, True]

Một vài kiểu khai báo Python cho phép:

list = [ ]
list = ["aio", [1,2,3,4]]

Để xem số phần tử của list, ta dùng cú pháp:

list = ["aio", [1,2,3,4]]

len(list)

Kết quả:

2

1.2. Indexable

Có thể truy cập đến từng phần tử của list thông qua index, thông qua cú pháp

list[index]

Ví dụ:

my_list = [10, 20, 30, 40]

print(my_list[0])
print(my_list[-1])

Kết quả:

10
40

Index có thể âm dương là vì cơ chế foward index và backward index image

1.3. Slicing

Slicing là thao tác để trích xuất một phần liên tục từ một list, bao gồm 3 yếu tố bắt bắt đầu từ đâu, kết thúc ở đâu, và bước nhảy

Cú pháp:

list[start:stop:step]

1.4. Method

image

Ở trên là các method được cài đặt sẵn của kiểu list.

1.4.1. append()

append() được sử dụng để thêm một phần tử mới vào cuối list. Ví dụ:

data = [6,5,7,1,9,2]
print(data)
data.append(4)
print(data)

Kết quả:

[6,5,7,1,9,2]
[6,5,7,1,9,2,4]

1.4.2. insert()

insert() được sử dụng để thêm một phần tử vào index bất kì của list Ví dụ:

data = [6, 5, 7, 1, 9, 2]
print(data)      
data.insert(0, 4)
print(data)           

Kết qủa:

[6, 5, 7, 1, 9, 2]
[4, 6, 5, 7, 1, 9, 2]

Giải thích:

1.4.3. extend()

extend() được sử dụng để mở rộng danh sách hiện tại bằng cách thêm tất cả các phần tử từ một iterable khác Ví dụ:

a = [1, 2, 3]
b = [4, 5]
a.extend(b)
print(a)

Kết quả:

[1, 2, 3, 4, 5]

1.4.4. Xóa phần tử khỏi list với remove() và pop():

remove(): Xóa theo giá trị Ví dụ:

fruits = ["apple", "banana", "cherry", "banana"]
fruits.remove("banana")
print(fruits)

Kết quả:

['apple', 'cherry', 'banana'] 

Giải thích:

pop(): Xóa theo vị trí Ví dụ:

numbers = [10, 20, 30, 40]
removed = numbers.pop(2)
print(removed)
print(numbers)

Kết quả:

[10, 20, 40]

1.4.5. Sử dụng del để xóa object và clear() để loại bỏ elements

Ví dụ:

a = [10, 20, 30, 40]
print(a)
del a[2]  
print(a)  

Kết quả:

[10, 20, 30, 40]
[10, 20, 40]

Ví dụ:

a = [1, 2, 3, 4]
print(a)
a.clear()
print(a)  

Kết quả:

[1, 2, 3, 4]
[]

1.4.6. index()

index() được dùng để tìm vị trí (chỉ số) xuất hiện đầu tiên của một giá trị cụ thể trong danh sách.

Cú pháp:

list.index(x[, start[, end]])
fruits = ['apple', 'banana', 'cherry', 'banana']
print(fruits.index('banana'))

Kết quả:

1

1.4.7. reverse()

reverse() được dùng để đảo ngược thứ tự các phần tử trong danh sách ngay tại chỗ

Ví dụ:

numbers = [1, 2, 3, 4, 5]
numbers.reverse()
print(numbers)

Kết quả:

[5, 4, 3, 2, 1]

1.4.8. count()

count() dùng để đếm số lần xuất hiện của một phần tử cụ thể trong danh sách.

Ví dụ:

fruits = ['apple', 'banana', 'apple', 'orange', 'banana', 'apple']
print(fruits.count('apple'))

Kết quả:

3

1.4.9. copy()

copy() dùng để tạo một bản sao của một list. Lưu ý, hai danh sách nằm ở hai vùng nhớ khác nhau.

Ví dụ:

data = [6,5,7,1,9,2]
print(data)
data_copy = data.copy()
print(data_copy)

Kết quả:

[6,5,7,1,9,2]
[6,5,7,1,9,2]

1.4.10. sort()

sort() được dùng để sắp xếp các phần tử trong danh sách, tăng dần hoặc giảm dần

Ví dụ:

numbers = [3, 1, 4, 1, 5, 9, 2]
numbers.sort()
print(numbers)
numbers.sort(reverse=True)
print(numbers)

Kết quả:

[1, 1, 2, 3, 4, 5, 9]
[9, 5, 4, 3, 2, 1, 1]

1.4.11. Dấu + và -

Nối hai playlist:

data1 = [6, 5, 7]
data2 = [1, 9, 2]
data = data1 + data2  # nối 2 list (concatenate two lists)
print(data)

Kết qủa:

[6, 5, 7, 1, 9, 2]

Nhân list với một số nguyên:

data = [6, 5]
data_m = data * 3 
print(data_m)

Kết quả:

[6, 5, 6, 5, 6, 5]

2. Built-in functions

sum(): Tính tổng các phần tử trong một iterable. Ví dụ:

numbers = [1, 2, 3, 4]
result = sum(numbers)  # 1 + 2 + 3 + 4 = 10
print(result) 

Kết quả

10

zip(): Kết hợp các iterable lại với nhau theo từng cặp phần tử tương ứng Ví dụ:

names = ["Alice", "Bob", "Charlie"]
scores = [85, 90, 95]

zipped = zip(names, scores)
print(list(zipped))

Kết quả:

[('Alice', 85), ('Bob', 90), ('Charlie', 95)]

reversed(): Trả về một iterator đảo ngược của một chuỗi, list, hoặc tuple. Ví dụ:

numbers = [1, 2, 3, 4]
reversed_numbers = reversed(numbers)
print(list(reversed_numbers)

Kết quả:

[4, 3, 2, 1]

enumerate(): Gắn chỉ số (index) vào mỗi phần tử trong iterable. Ví dụ:

fruits = ["apple", "banana", "cherry"]
for index, fruit in enumerate(fruits):
    print(index, fruit)

Kết quả:

0 apple
1 banana
2 cherry

∞. Câu hỏi


Previous Post
LOGICAL THINKING & PROBLEM-SOLVINGIN DATA SCIENCE AND AI
Next Post
Mục tiêu để sống