Computer >> Máy Tính >  >> Lập trình >> Python

Làm thế nào để lặp lại đệ quy một từ điển Python lồng nhau?

Dưới đây là một đối tượng thư mục lồng nhau

 D1 ={1:{2:{3:4, 5:6}, 3:{4:5, 6:7}}, 2:{3:{4:5}, 4:{6:7}}} 

Ví dụ

Hàm đệ quy sau được gọi lặp lại nếu thành phần giá trị của mỗi mục trong thư mục là chính thư mục.

 def iterdict (d):for k, v in d.items ():if isinstance (v, dict):iterdict (v) else:print (k, ":", v) iterdict (D1)  

Đầu ra

Khi đối tượng từ điển ban đầu được chuyển đến hàm này, tất cả các cặp khóa-giá trị sẽ được chuyển ngang. Đầu ra là:

 3 45 64 56 74 56 7