Python - Dictionary View Objects

Các phương thức items() , keys() values() của lớp dict trả về các đối tượng view. Những view này được làm mới một cách động mỗi khi có bất kỳ thay đổi nào xảy ra trong nội dung của đối tượng nguồn dictionary .

The items() Method

Phương thức items() trả về một đối tượng xem dict_items. Nó chứa một list của tuples , mỗi tuple được tạo thành từ các cặp khóa, giá trị tương ứng.

Syntax

Cú pháp của phương thức items() như sau −

Obj = dict.items()

Return value

Phương thức items() trả về đối tượng dict_items, là một cái nhìn động của các bộ (key, value).

Example

Trong ví dụ sau, chúng ta đầu tiên lấy đối tượng dict_items bằng phương thức items() và kiểm tra cách nó được cập nhật động khi đối tượng từ điển được cập nhật.

numbers = {10:"Ten", 20:"Twenty", 30:"Thirty",40:"Forty"}
obj = numbers.items()
print ('type of obj: ', type(obj))
print (obj)
print ("update numbers dictionary")
numbers.update({50:"Fifty"})
print ("View automatically updated")
print (obj)

Nó sẽ tạo ra đầu ra sau đây −

type of obj: <class 'dict_items'>
dict_items([(10, 'Ten'), (20, 'Twenty'), (30, 'Thirty'), (40, 'Forty')])
update numbers dictionary
View automatically updated
dict_items([(10, 'Ten'), (20, 'Twenty'), (30, 'Thirty'), (40, 'Forty'), (50, 'Fifty')])

The keys() Method

Phương thức keys() của lớp dict trả về đối tượng dict_keys, là danh sách tất cả các khóa được định nghĩa trong từ điển. Đây là một đối tượng view, vì nó tự động được cập nhật mỗi khi có hành động cập nhật nào được thực hiện trên đối tượng từ điển.

Syntax

Cú pháp của phương thức keys() như sau −

Obj = dict.keys()

Return value

Phương thức keys() trả về đối tượng dict_keys, là một chế độ xem của các khóa trong từ điển.

Example

Trong ví dụ này, chúng ta đang tạo một từ điển có tên là "numbers" với các khóa là số nguyên và các giá trị chuỗi tương ứng của chúng. Sau đó, chúng ta lấy một đối tượng xem "obj" của các khóa bằng cách sử dụng phương thức keys(), và lấy kiểu dữ liệu cũng như nội dung của nó.

numbers = {10:"Ten", 20:"Twenty", 30:"Thirty",40:"Forty"}
obj = numbers.keys()
print ('type of obj: ', type(obj))
print (obj)
print ("update numbers dictionary")
numbers.update({50:"Fifty"})
print ("View automatically updated")
print (obj)

Nó sẽ tạo ra output

type of obj: <class 'dict_keys'>
dict_keys([10, 20, 30, 40])
update numbers dictionary
View automatically updated
dict_keys([10, 20, 30, 40, 50])

The values() Method

Phương thức values() trả về một cái nhìn về tất cả các giá trị có trong từ điển. Đối tượng này thuộc loại dict_value, và nó được cập nhật tự động.

Syntax

Dưới đây là cú pháp của phương thức values() −

Obj = dict.values()

Return value

Phương thức values() trả về một chế độ xem dict_values của tất cả các giá trị có trong từ điển.

Example

Trong ví dụ dưới đây, chúng ta nhận được một đối tượng view "obj" của các giá trị bằng cách sử dụng phương thức values() từ từ điển "numbers" −

numbers = {10:"Ten", 20:"Twenty", 30:"Thirty",40:"Forty"}
obj = numbers.values()
print ('type of obj: ', type(obj))
print (obj)
print ("update numbers dictionary")
numbers.update({50:"Fifty"})
print ("View automatically updated")
print (obj)

Nó sẽ tạo ra output

type of obj: <class 'dict_values'>
dict_values(['Ten', 'Twenty', 'Thirty', 'Forty'])
update numbers dictionary
View automatically updated
dict_values(['Ten', 'Twenty', 'Thirty', 'Forty', 'Fifty'])