Danh sách có phải là Python có thể băm không?
Danh sách có phải là Python có thể băm không?

Video: Danh sách có phải là Python có thể băm không?

Video: Danh sách có phải là Python có thể băm không?
Video: Cấu trúc dữ liệu và giải thuật - Python - Bảng băm (Hash Table) 2024, Có thể
Anonim

Tất cả Python's các đối tượng tích hợp không thể thay đổi được có thể băm , trong khi không có vùng chứa có thể thay đổi (chẳng hạn như danh sách hoặc từ điển) được. Các đối tượng là thể hiện của các lớp do người dùng xác định là có thể băm theo mặc định; tất cả chúng đều so sánh không bằng nhau và giá trị băm của chúng là id () của chúng.

Như vậy, các bộ giá trị có thể băm trong Python không?

10.1 Tuples là không thay đổi Các giá trị được lưu trữ trong tuple có thể là bất kỳ kiểu nào và chúng được lập chỉ mục bởi các số nguyên. Sự khác biệt quan trọng là tuples là bất biến. Tuples cũng có thể so sánh và có thể băm vì vậy chúng tôi có thể sắp xếp danh sách chúng và sử dụng tuples như các giá trị quan trọng trong Python từ điển.

nghĩa là gì đối với một cái gì đó có thể được băm? Một đối tượng Là cho là có thể băm nếu nó có một giá trị băm vẫn giữ nguyên trong suốt thời gian tồn tại của nó. là các phiên bản của các lớp do người dùng xác định có thể cạo được theo mặc định; tất cả chúng đều so sánh không bằng nhau (ngoại trừ chính chúng) và giá trị băm của chúng Là bắt nguồn từ theirid ().

Xem xét điều này, Python có nghĩa là gì?

LoạiError: không thể bị bắt loại: 'danh sách' thường có nghĩa rằng bạn đang cố gắng sử dụng danh sách làm đối số băm. có nghĩa điều đó khi bạn cố gắng băm một không thể bắt được đối tượng nó sẽ dẫn đến một lỗi. Đối với người yêu cũ. Cách tiêu chuẩn để giải quyết vấn đề này là truyền một danh sách thành một bộ.

Danh sách có bất biến trong Python không?

Tất cả mọi thứ trong Python là một đối tượng. Và những gì mọi người đến Python nên nhanh chóng biết rằng tất cả các đối tượng Python có thể biến đổi hoặc bất biến . Các kiểu tích hợp đối tượng như (int, float, bool, str, tuple, unicode) là bất biến . Đối tượng của các kiểu tích hợp sẵn như ( danh sách , set, dict) có thể thay đổi.

Đề xuất: