Hướng dẫn python check multiple values in dictionary - python kiểm tra nhiều giá trị trong từ điển

dict1 = {'galaxy': 5, 'apple': 6, 'nokia': 5}

Có một cách để hiển thị các phím trong một dict với cùng các giá trị trong một dict?

target_value = 5
new_dict = {}

for key, value in dict1:
    if value == target_value:
        new_dict[key] = value

kết quả mong muốn:

dict1 = {'galaxy':5, 'nokia':5}

Hướng dẫn python check multiple values in dictionary - python kiểm tra nhiều giá trị trong từ điển

Trong bài viết này, chúng tôi sẽ thảo luận về cách tạo và quản lý một từ điển trong đó các khóa có thể có nhiều giá trị.


Trong Python, nếu chúng ta muốn một từ điển trong đó một khóa có nhiều giá trị, thì chúng ta cần liên kết một đối tượng với mỗi khóa là giá trị. Đối tượng giá trị này nên có khả năng có các giá trị khác nhau bên trong nó. Chúng ta có thể sử dụng một tuple hoặc một danh sách làm giá trị trong từ điển để liên kết nhiều giá trị với một khóa.

Hãy để hiểu nó bằng một số ví dụ,

Tạo một từ điển với một danh sách là giá trị

# Create a dictionary where multiple values are
# associated with a key
word_freq = {'is': [1, 3, 4, 8, 10],
             'at': [3, 10, 15, 7, 9],
             'test': [5, 3, 7, 8, 1],
             'this': [2, 3, 5, 6, 11],
             'why': [10, 3, 9, 8, 12]}

Trong từ điển này, các khóa là các chuỗi và với mỗi chuỗi khóa, chúng tôi có một danh sách các số được liên kết như một trường giá trị. Vì vậy, về cơ bản, trong từ điển này, nhiều giá trị được liên kết với một khóa.

Những thứ liên quan,

Quảng cáo

  • Từ điển trong Python là gì và tại sao chúng ta cần nó?
  • Làm thế nào để tạo một từ điển trong Python?
  • Làm thế nào để chuyển đổi một danh sách thành từ điển trong Python?
  • Một từ điển có thể có các khóa trùng lặp trong Python không?

Nhận được nhiều giá trị của một khóa trong từ điển

Khi chúng tôi chọn một khóa trong từ điển này, nó sẽ cho giá trị của khóa đó. Trong trường hợp này, nó sẽ là một danh sách,

# Create a dictionary where multiple
# values are associated with a key
word_freq = {'is'   : [1, 3, 4, 8, 10],
             'at'   : [3, 10, 15, 7, 9],
             'test' : [5, 3, 7, 8, 1],
             'this' : [2, 3, 5, 6, 11],
             'why'  : [10, 3, 9, 8, 12] }


# Get multiple values of a key as list
value_list = word_freq['at']

print('Values of key "at" are:')
print(value_list)

Output:

Values of key "at" are:
[3, 10, 15, 7, 9]

Chúng tôi đã chọn mục từ từ điển trong đó khóa là ‘At và sau đó in tất cả các giá trị liên quan đến khóa này.

Đọc thêm về tìm kiếm nội dung trong từ điển,

  • Làm thế nào để có được tất cả các phím từ một từ điển?
  • Làm thế nào để có được tất cả các giá trị từ một từ điển?
  • Làm thế nào để tìm khóa theo giá trị trong từ điển?
  • Làm thế nào để lọc một từ điển dựa trên các điều kiện?

Nối nhiều giá trị vào một khóa trong từ điển

Tạo một từ điển với nhiều giá trị cho một khóa rất dễ dàng, nhưng phần khó khăn là nối thêm các giá trị khác nhau cho các phím.
Let’s understand by an example,

Giả sử chúng ta muốn thêm ba giá trị 20, 21, 22, cho một khóa trong từ điển. Chúng ta cần đảm bảo rằng nếu khóa đã tồn tại trong từ điển hay không.

  • Nếu có, thì hãy nối các giá trị mới này vào các giá trị hiện có của khóa.
  • Nếu không, sau đó và thêm một danh sách trống làm giá trị cho khóa đó và sau đó thêm các giá trị này trong danh sách đó.

Chúng tôi đã tạo ra một chức năng để thực hiện tất cả các công cụ đề cập ở trên,

def add_values_in_dict(sample_dict, key, list_of_values):
    ''' Append multiple values to a key in 
        the given dictionary '''
    if key not in sample_dict:
        sample_dict[key] = list()
    sample_dict[key].extend(list_of_values)
    return sample_dict

Bây giờ, hãy để sử dụng chức năng này để thêm nhiều giá trị cho một khóa,

word_freq = {'is'   : [1, 3, 4, 8, 10],
             'at'   : [3, 10, 15, 7, 9],
             'test' : [5, 3, 7, 8, 1],
             'this' : [2, 3, 5, 6, 11],
             'why'  : [10, 3, 9, 8, 12] }

# Append multiple values for existing key 'at'
word_freq = add_values_in_dict(word_freq, 'at', [20, 21, 22])

print('Contents of the dictionary: ')
print(word_freq)

Output:

{'is': [1, 3, 4, 8, 10],
 'at': [3, 10, 15, 7, 9, 20, 21, 22],
 'test': [5, 3, 7, 8, 1],
 'this': [2, 3, 5, 6, 11],
 'why': [10, 3, 9, 8, 12] }

Trong ví dụ này, Key ‘At, đã tồn tại trong từ điển; Do đó, nó đã thêm các giá trị mới trong danh sách các giá trị hiện có cho khóa ‘tại tại.

Ví dụ 2:

# Append multiple values for a new key 'here'
word_freq = add_values_in_dict(word_freq, 'here', [10, 11, 12])

print('Contents of the dictionary: ')
print(word_freq)

Output:

target_value = 5
new_dict = {}

for key, value in dict1:
    if value == target_value:
        new_dict[key] = value
0

Trong ví dụ này, chìa khóa ’ở đây không tồn tại trong từ điển; Do đó, nó đã thêm khóa mới cùng với danh sách các giá trị được cung cấp.

Đọc thêm,

  • Làm thế nào để thêm các cặp khóa/giá trị vào một từ điển trong Python?
  • Làm thế nào để lặp lại một từ điển trong Python?

Tìm kiếm giá trị trong từ điển với nhiều giá trị cho một khóa

Giả sử chúng ta muốn kiểm tra xem một giá trị có tồn tại trong từ điển trong đó nhiều giá trị được liên kết với một khóa không. Sau đó, chúng tôi cũng muốn có được một danh sách các khóa chứa giá trị đã cho của chúng tôi. Hãy để xem cách làm điều này,

target_value = 5
new_dict = {}

for key, value in dict1:
    if value == target_value:
        new_dict[key] = value
1

Output:

target_value = 5
new_dict = {}

for key, value in dict1:
    if value == target_value:
        new_dict[key] = value
2

Sử dụng danh sách hiểu, chúng tôi đã lặp lại trên tất cả các cặp giá trị khóa trong từ điển. Đối với mỗi cặp, chúng tôi kiểm tra xem giá trị đã cho có tồn tại trong danh sách các giá trị được liên kết với khóa này hay không. Nếu có, thì hãy đặt khóa đó vào một danh sách riêng được theo dõi bởi danh sách hiểu. Cuối cùng, chúng tôi có danh sách các khóa chứa giá trị 10.

Conclusion:

Vì vậy, đây là cách chúng ta có thể liên kết nhiều giá trị với một khóa trong từ điển. Tương tự, đối với các hoạt động khác như tìm kiếm và xóa các phần tử khỏi loại từ điển này, chúng ta cần đảm bảo rằng nó xử lý thực tế rằng các giá trị trong từ điển là liệt kê đối tượng và chứa nhiều giá trị.

Làm thế nào để bạn kiểm tra xem nhiều giá trị có trong một python từ điển không?

Kiểm tra xem nhiều khóa có trong một từ điển trong Python #không..
Sử dụng biểu thức máy phát để lặp qua một tuple chứa các phím ..
Sử dụng toán tử trong để kiểm tra xem mỗi khóa có trong từ điển không ..
Chuyển kết quả cho hàm tất cả () ..

Làm thế nào tôi có thể truy cập một từ điển với nhiều giá trị?

Trong Python, nếu chúng ta muốn một từ điển trong đó một khóa có nhiều giá trị, thì chúng ta cần liên kết một đối tượng với mỗi khóa là giá trị.Đối tượng giá trị này nên có khả năng có các giá trị khác nhau bên trong nó.Chúng ta có thể sử dụng một tuple hoặc một danh sách làm giá trị trong từ điển để liên kết nhiều giá trị với một khóa.associate an object with each key as value. This value object should be capable of having various values inside it. We can either use a tuple or a list as a value in the dictionary to associate multiple values with a key.

Các khóa từ điển Python có thể có nhiều giá trị không?

Ý tưởng chung: Trong Python, nếu chúng ta muốn một từ điển có nhiều giá trị cho một khóa duy nhất, chúng ta cần lưu trữ các giá trị này trong thùng chứa của riêng chúng trong từ điển.Để làm như vậy, chúng ta cần sử dụng một thùng chứa làm giá trị và thêm nhiều giá trị của chúng ta vào container đó.Các thùng chứa phổ biến là danh sách, bộ dữ liệu và bộ.if we want a dictionary to have multiple values for a single key, we need to store these values in their own container within the dictionary. To do so, we need to use a container as a value and add our multiple values to that container. Common containers are lists, tuples, and sets.

Làm thế nào để bạn kiểm tra xem một danh sách các khóa có trong một python từ điển không?

Phương pháp 1: Nhận các khóa từ điển làm danh sách bằng Dict.Phương thức Dict.Keys () trong Từ điển Python, trả về một đối tượng Xem hiển thị danh sách tất cả các khóa trong từ điển theo thứ tự chèn.dict. keys() method in Python Dictionary, returns a view object that displays a list of all the keys in the dictionary in order of insertion.