Python hỗ trợ nhiều cấu trúc dữ liệu dựng sẵn khác nhau để giúp lập trình dễ dàng và hiệu quả như bất kỳ ngôn ngữ lập trình nào khác. Tất cả các cấu trúc dữ liệu python này là tuần tự và lưu trữ bộ sưu tập dữ liệu ở nhiều định dạng khác nhau, không giống như các cấu trúc khác. Danh sách và từ điển là một số cấu trúc dữ liệu python đơn giản nhưng mạnh mẽ và lưu trữ nhiều loại dữ liệu. Bài viết này sẽ giải thích cấu trúc dữ liệu danh sách và từ điển cũng như sự khác biệt của chúng và khi nào nên sử dụng danh sách so với. từ điển trong Python
Danh sách trong Python là gì?
Python sở hữu một danh sách dưới dạng cấu trúc dữ liệu là một chuỗi các phần tử được sắp xếp theo thứ tự và có thể thay đổi về bản chất. Mỗi mục hoặc giá trị bên trong danh sách được gọi là một phần tử. Giống như các chuỗi được định nghĩa là các ký tự nằm giữa các dấu ngoặc kép, các danh sách được xác định bằng cách có các giá trị nằm giữa các dấu ngoặc vuông [[ ]] được phân tách bằng dấu phẩy
Một danh sách rất tốt để sử dụng khi bạn phải xử lý các giá trị liên quan. Vì danh sách có thể thay đổi nên bạn có thể thêm, cập nhật hoặc xóa các thành phần của danh sách bất kỳ lúc nào trong khi lập trình. Để tìm hiểu thêm về danh sách python, hãy tham khảo bài viết của chúng tôi “5 cách để chuyển đổi tập hợp thành danh sách trong Python"
Ví dụ
sample_list = ["Python", "is", "Fun"] print[sample_list]
đầu ra
['Python', 'is', 'Fun']
Từ điển trong Python là gì?
Từ điển là cấu trúc dữ liệu python mặc định được sử dụng để lưu trữ bộ sưu tập dữ liệu dưới dạng các cặp khóa-giá trị. Từ điển được viết bên trong dấu ngoặc nhọn [{}], được phân tách bằng dấu phẩy. Tuy nhiên, khóa và giá trị của dữ liệu được phân tách bằng cách đặt dấu chấm phẩy giữa chúng [. ]. Các phần tử từ điển được sắp xếp theo thứ tự, có thể thay đổi và không cho phép trùng lặp. Hãy nhớ rằng tên khóa của mọi giá trị dữ liệu phải là duy nhất và phân biệt chữ hoa chữ thường. Sau đó, bạn có thể truy cập các phần tử từ điển bằng cách sử dụng tên khóa và truy xuất giá trị dữ liệu tương ứng của nó
Ví dụ
sample_dict = { "vegetable": "potato", "fruit": "banana", "chocolate": "gems" } print[sample_dict]
đầu ra
{'vegetable': 'potato', 'fruit': 'banana', 'chocolate': 'gems'}
Sự khác biệt giữa Danh sách và Từ điển trong Python
Tham số so sánh
Danh sách
Từ điển
Sự định nghĩa
Tập hợp các phần tử khác nhau giống như một mảng trong C++
Tập hợp các phần tử trong cấu trúc băm dưới dạng các cặp khóa-giá trị
cú pháp
Đặt tất cả các phần tử bên trong dấu ngoặc vuông [], cách nhau bởi dấu phẩy [,]
Đặt tất cả các cặp khóa-giá trị bên trong dấu ngoặc nhọn [{}], được phân tách bằng dấu phẩy. Ngoài ra, mỗi khóa và cặp được phân tách bằng dấu chấm phẩy [. ]
loại chỉ mục
Các chỉ số là các giá trị nguyên bắt đầu từ giá trị 0
Các khóa trong từ điển thuộc bất kỳ loại dữ liệu nào
Chế độ truy cập
Chúng ta có thể truy cập các phần tử bằng cách sử dụng giá trị chỉ mục
Chúng ta có thể truy cập các phần tử bằng các phím
thứ tự các phần tử
Thứ tự mặc định của các phần tử luôn được duy trì
Không đảm bảo duy trì trật tự
khả năng biến đổi
Danh sách có thể thay đổi trong tự nhiên
Từ điển có thể thay đổi, nhưng các khóa không cho phép trùng lặp
Sự sáng tạo
Đối tượng danh sách được tạo bằng hàm list[]
Đối tượng từ điển được tạo bằng hàm dict[]
Loại[]
Phương thức Sort[] sắp xếp các phần tử theo thứ tự tăng dần hoặc giảm dần
Phương thức Sort[] sắp xếp các khóa trong từ điển theo mặc định
Đếm[]
Phương thức Count[] trả về số phần tử xuất hiện trong danh sách
Phương thức Count[] không tồn tại trong từ điển
Đảo ngược[]
Phương thức Reverse[] đảo ngược các phần tử danh sách
Không thể đảo ngược các mục từ điển vì chúng là các cặp khóa-giá trị
Khi nào nên sử dụng từ điển so với danh sách trong Python?
Danh sách là tập hợp dữ liệu được sắp xếp theo thứ tự, trong khi từ điển lưu trữ dữ liệu dưới dạng các cặp khóa-giá trị bằng cách sử dụng cấu trúc hashtable. Do đó, việc tìm nạp các phần tử từ cấu trúc dữ liệu danh sách khá phức tạp so với từ điển trong Python. Do đó, từ điển nhanh hơn danh sách trong Python. Sẽ hiệu quả hơn khi sử dụng từ điển để tra cứu các phần tử vì nó nhanh hơn danh sách và mất ít thời gian hơn để duyệt qua
Hơn nữa, danh sách giữ thứ tự của các phần tử trong khi từ điển thì không. Vì vậy, nên sử dụng cấu trúc dữ liệu danh sách khi bạn quan tâm đến thứ tự của các thành phần dữ liệu. Ngoài ra, nên sử dụng cấu trúc dữ liệu danh sách khi xử lý các giá trị dữ liệu có thể bị thay đổi trong tương lai. Đó là bởi vì các khóa trong từ điển phải là duy nhất về bản chất và nó có thể gây ra sự cố khi sửa đổi chúng sau này. Hơn nữa, từ điển trong Python yêu cầu rất ít không gian để lưu trữ các thành phần dữ liệu so với danh sách
Nhìn vào tất cả các tham số trên, rõ ràng là từ điển sử dụng tốt hơn và hiệu quả hơn so với danh sách python
Các ứng dụng của danh sách
- Danh sách được sử dụng để lưu trữ dữ liệu, nên được sắp xếp theo thứ tự và tuần tự
- Danh sách được sử dụng trong cơ sở dữ liệu
- Nó được sử dụng ở định dạng JSON
- Danh sách rất hữu ích cho hoạt động mảng
Ứng dụng của từ điển
- Từ điển được sử dụng như một câu lệnh chuyển đổi trong Python
- Nó được sử dụng để lưu trữ một lượng lớn dữ liệu để truy cập dễ dàng và nhanh chóng
- Từ điển được sử dụng để xây dựng các chỉ mục của nội dung
- Từ điển được sử dụng khi bạn muốn xây dựng các đối tượng bản đồ
- Nó được sử dụng để tạo khung dữ liệu với các danh sách
- Từ điển được sử dụng trong JSON
Sự kết luận
Cho đến nay, chúng ta đã thấy rằng danh sách và từ điển là cấu trúc dữ liệu cơ bản nhất trong lập trình python với những khác biệt riêng của chúng theo một số cách nhất định như cú pháp, phương thức lưu trữ, triển khai, v.v. Nhưng mặc dù khác nhau, cả hai đều là cấu trúc dữ liệu quan trọng nhất để làm việc khi lưu trữ dữ liệu tuyến tính trong khi lập trình. Để tìm hiểu thêm về các khái niệm lập trình như vậy, hãy xem các blog khác của favtutor