Phân biệt List, Tuple, Set, Dictionary trong Python

Nếu như các bạn đã tìm hiểu qua về Python thì chắc hẳn đã biết đến các bộ dữ liệu như List, Tuple,... Tất cả các bộ dữ liệu này đều nằm trong một nhóm được gọi là Built-in data structure. Để hiểu rõ hơn về vấn đề trên và phân biệt các bộ dữ liệu eLib mời bạn đọc tham khảo bài viết dưới đây.

Phân biệt List, Tuple, Set, Dictionary trong Python

1. List

Kiểu dữ liệu List trong Python là một collection lưu trữ các phần tử theo tứ tự đã cho, có thể thay đổi. Cho phép chứa dữ liệu trùng lặp. List có cấu trúc dữ liệu mà có khả năng lưu giữ các kiểu dữ liệu khác nhau.

List trong Python được viết với dấu ngoặc vuông [].

Tương tự như chỉ mục của chuỗi, chỉ mục của List bắt đầu từ 0.

Khởi tạo một list

list1 chứa các phần tử number, string và một list khác:

list1 = [1, 2, 3, 4, [5, 6, 7], "A", 'B']
print (list1) # --> [1, 2, 3, 4, [5, 6, 7], 'A', 'B']
print (type(list1))  # --> <class 'list'>

Các thao tác cơ bản với List:

Truy cập đến một phần tử trong list:

print(list1[3]) # --> 4

Gán giá trị mới cho một phần tử trong list:

list1[3] = 10
print (list1) # --> [1, 2, 3, 10, [5, 6, 7], 'A', 'B']

Lấy độ dài của list:

print(len(list1)) # --> 7

Thêm phần tử mới vào list:

ist1.append("C")
print (list1) # --> [1, 2, 3, 10, [5, 6, 7], 'A', 'B', 'C']

Gộp hai list:

list2 = ['apple', 'banana']
list1.extend(list2)
print (list1) # --> [1, 2, 3, 10, [5, 6, 7], 'A', 'B', 'C', 'apple', 'banana']

Xóa một phần tử từ list:

list1.remove('B')
print (list1) # --> [1, 2, 3, 10, [5, 6, 7], 'A', 'C', 'apple', 'banana']

Sắp xếp list:

list1 = [4, 3, 5, 2, 1, 6, 2]

list1.sort()
print (list1) # --> [1, 2, 2, 3, 4, 5, 6]
list1.sort(reverse = True)
print (list1) # --> [6, 5, 4, 3, 2, 2, 1]

2. Tuple

Kiểu dữ liệu Tuple trong python là một collection có thứ tự, không thể thay đổi. Cho phép chứa dữ liệu trùng lặp.

Tuple sử dụng các dấu ngoặc đơn, Không giống như List sử dụng các dấu ngoặc vuông. Các đối tượng trong tuple được phân biệt bởi dấu phảy và được bao quanh bởi dấu ngoặc đơn (). Giống như chỉ mục của chuỗi, chỉ mục của tuple bắt đầu từ 0.

Khởi tạo một Tuple

tuple1 = (1, 2, 3, 4, (5, 6, 7), "A", 'B')
print (tuple1) # --> [1, 2, 3, 4, [5, 6, 7], 'A', 'B']
print (type(tuple1))  # --> <class 'tuple'>

Không thể thay đổi một phần tử của Tuple:

tuple1[3] = 10 # --> TypeError: 'tuple' object does not support item assignment

Không thể xoá phần tử trong Tuple:

del tuple1[3] # --> TypeError: 'tuple' object doesn't support item deletion

Đếm số lần xuất hiện của một phần tử trong Tuple:

print (tuple1.count('A')) #--> 1

Lấy ra vị trí index đầu tiên tìm được:

print (tuple1.index('A')) #--> 5

3. Set

Kiểu dữ liệu Set trong python là một collection không có thứ tự, không có chỉ mục. Không cho phép chứa dữ liệu trùng lặp.

Set trong Python được khai báo với các dấu ngoặc nhọn {}.

Khởi tạo một Set

set1 = {4, 3, 5, 2, 1, 6, 2}
print (set1) # --> {1, 2, 3, 4, 5, 6}

Các thao tác cơ bản với Set:

Thêm một phần tử vào Set:

set1.add(100)
print (set1) # --> {1, 2, 3, 4, 5, 6, 100}

Xoá một phần tử bằng pop:

set1.discard(100)
print (set1) # --> {1, 2, 3, 4, 5, 6}

4. Dictionary

Kiểu dữ liệu Dictionary trong Python là một tập hợp các cặp key-value không có thứ tự, có thể thay đổi và lập chỉ mục (truy cập phần tử theo chỉ mục). Dictionary được khởi tạo với các dấu ngoặc nhọn {} và chúng có các khóa và giá trị (key-value). Mỗi cặp key-value được xem như là một item. Key mà đã truyền cho item đó phải là duy nhất, trong khi đó value có thể là bất kỳ kiểu giá trị nào. Key phải là một kiểu dữ liệu không thay đổi (immutable) như chuỗi, số hoặc tuple.

Key và value được phân biệt riêng rẽ bởi một dấu hai chấm (:). Các item phân biệt nhau bởi một dấu phảy (,). Các item khác nhau được bao quanh bên trong một cặp dấu ngoặc móc đơn tạo nên một Dictionary trong Python

Khởi tạo một Dictionary

dictCar = {
    "brand": "Honda",
    "model": "Honda Civic",
    "year": 1972
}
print(dictCar) # --> {'brand': 'Honda', 'model': 'Honda Civic', 'year': 1972}

Các thao tác cơ bản với Dict:

Lấy các keys của Dict:

print(dictCar.keys()) # --> dict_keys(['brand', 'model', 'year'])

Lấy các values của Dict:

 

Lấy các items của Dict:

print(dictCar.items())
# --> dict_items([('brand', 'Honda'), ('model', 'Honda Civic'), ('year', 1972)])

Truy cập bằng key:

print(dictCar['brand']) # --> Honda

Thêm một phần tử vào Dict:

dictCar['madeIn'] = 'Japan'
print(dictCar)
# --> {'brand': 'Honda', 'model': 'Honda Civic', 'year': 1972, 'madeIn': 'Japan'}

Xoá một phần tử:

dictCar.pop("model")
print(dictCar)
# --> {'brand': 'Honda', 'year': 1972}

5. Tổng kết

Phân biệt List, Tuple, Set, Dictionany trong Python được thể hiện trong bảng sau:

Có thứ tự: ở đây có nghĩa là các phần tử của collection giữ nguyên vị trí như lúc khởi tạo, điều đó có nghĩa là chúng ta có thể dùng chỉ mục (index) để truy cập các phần tử của collection.

Kiểu collection Đặc trưng Có thể thay đổi (Mutable) Có thứ tự Đặt trong dấu Constructor
List Chứa bất kì kiểu dữ liệu nào x x [] list()
Tuple Giá trị không thể thay đổi   x () tuple()
Set Giá trị là duy nhất x   {} set()
Dict Key: Value x   {} dict()

Trên đây là bài viết của eLib.VN về Phân biệt các kiểu dữ liệu List, Tuple, Set, Dictionary trong Python. Hy vọng bài viết hữu ích cho những bạn đang nghiên cứu về kiểu dữ liệu chuẩn của Python. Chúc các bạn thành công và đam mê với con đường lập trình.

Như vậy là chúng ta đã hoàn thành nội dung "Các kiểu dữ liệu chuẩn trong Python". Để củng cố và nắm vững nội dung đã học, mời bạn cùng thử sức với  "Bộ Câu hỏi Trắc Nghiệm Python có đáp án chi tiết"

Trắc Nghiệm

Ngày:24/10/2020 Chia sẻ bởi:Nguyễn Minh Duy

CÓ THỂ BẠN QUAN TÂM