Hướng dẫn can you have two of the same keys in a dictionary python? - bạn có thể có hai khóa giống nhau trong python từ điển không?
Show Trong bài viết này, chúng tôi sẽ tìm hiểu xem một từ điển có các khóa trùng lặp hay không trong Python. Câu trả lời thẳng là không. Bạn không thể có các khóa trùng lặp trong một từ điển trong Python. Nhưng chúng ta có thể có một hiệu ứng tương tự như giữ các khóa trùng lặp trong từ điển. Chúng ta cần hiểu lý do đằng sau câu hỏi này và làm thế nào chúng ta có thể đạt được các khóa trùng lặp trong Python. Bạn không thể có các khóa trùng lặp trong Python, nhưng bạn có thể có nhiều giá trị liên quan đến một khóa trong Python. Nếu bạn muốn giữ các khóa trùng lặp trong từ điển, bạn có hai hoặc nhiều giá trị khác nhau mà bạn muốn liên kết với cùng một khóa trong từ điển. Từ điển không thể có cùng các khóa, nhưng chúng ta có thể đạt được hiệu ứng tương tự bằng cách giữ nhiều giá trị cho một khóa trong từ điển. Hãy để hiểu với một ví dụ, Giả sử chúng ta có một từ điển tên và số điện thoại, Quảng cáo # Dictionary of names and phone numbers phone_details = { 'Mathew': 212323, 'Ritika': 334455, 'John' : 345323 } Đến bây giờ, mỗi tên (khóa) có một số điện thoại được liên kết với nó. Nhưng giả sử, John John có thêm hai số điện thoại và chúng tôi cũng muốn thêm chúng vào từ điển. Là chìa khóa ‘John, đã tồn tại trong từ điển, vì vậy nếu chúng ta cố gắng thêm hai cặp giá trị khóa với cùng một khóa như thế này, phone_details['John'] = 111223 phone_details['John'] = 333444 HOẶCphone_details.update({ 'John' : 111223}) phone_details.update({ 'John' : 333444}) Nó sẽ cập nhật giá trị của khóa hiện có ‘John, tức là. Mathew - 212323 Ritika - 334455 John - 333444 Để tránh loại vấn đề này, chúng ta có thể gán nhiều giá trị cho một khóa duy nhất. Như thế này, Mathew - 212323 Ritika - 334455 John - [345323, 111223, 333444] Thêm nhiều giá trị cho một khóa trong từ điển trong PythonThay vì chèn khóa trùng lặp, chúng ta có thể thay đổi loại giá trị thành danh sách và gán thêm các giá trị cho nó. Hãy để xem một ví dụ, def add_value(dict_obj, key, value): ''' Adds a key-value pair to the dictionary. If the key already exists in the dictionary, it will associate multiple values with that key instead of overwritting its value''' if key not in dict_obj: dict_obj[key] = value elif isinstance(dict_obj[key], list): dict_obj[key].append(value) else: dict_obj[key] = [dict_obj[key], value] # Dictionary of names and phone numbers phone_details = { 'Mathew': 212323, 'Ritika': 334455, 'John' : 345323 } # Append a value to the existing key add_value(phone_details, 'John', 111223) # Append a value to the existing key add_value(phone_details, 'John', 333444) for key, value in phone_details.items(): print(key, ' - ', value) Đầu ra Mathew - 212323 Ritika - 334455 John - [345323, 111223, 333444] Ở đây chúng tôi đã tạo một hàm add_value () thêm một cặp giá trị khóa vào từ điển. Nếu khóa đã tồn tại trong từ điển, nó sẽ liên kết nhiều giá trị với khóa đó thay vì ghi đè giá trị của nó. Nó theo logic này.
Vì vậy, đây là cách chúng ta có thể có các khóa trùng lặp trong từ điển, tức là, bằng cách thêm nhiều giá trị cho cùng một khóa trong từ điển trong Python. Tôi có danh sách sau đây chứa các số đăng ký xe trùng lặp với các giá trị khác nhau.Tôi muốn chuyển đổi nó thành một từ điển chấp nhận nhiều khóa đăng ký xe hơi này. Cho đến nay khi tôi cố gắng chuyển đổi danh sách thành từ điển, nó sẽ loại bỏ một trong các phím.Làm cách nào để tạo một từ điển với các khóa trùng lặp? Danh sách là:
Mã tôi đã thử là:
2 khóa có thể có cùng giá trị trong từ điển không?Không, mỗi khóa trong một từ điển phải là duy nhất.Bạn không thể có hai khóa có cùng giá trị.You can't have two keys with the same value.
Từ điển có thể có khóa lặp lại?Câu trả lời thẳng là không.Bạn không thể có các khóa trùng lặp trong một từ điển trong Python.Nhưng chúng ta có thể có một hiệu ứng tương tự như giữ các khóa trùng lặp trong từ điển.You can not have duplicate keys in a dictionary in Python. But we can have a similar effect as keeping duplicate keys in dictionary.
Có thể có những bản sao trong một python từ điển?Từ điển Python không cho phép khóa lặp lại.. |