问题
编写接口,在字典结构数据中寻找特定元素Linux的后代个数【应该要用上递归,已知结果应为7】
unix_tree = {
'Unix': {
'PWB/Unix': {
'System III': {
'HP-UX': None
},
'System V': {
'UnixWare': None,
'Solaris': {
'OpenSolaris': None
}
}
},
'BSD': {
'Unix 9': None,
'FreeBSD': None,
'NetBSD': None,
'MacOS': None
},
'Xenix': {
'Sco Unix': {
'OpenServer': None
},
'AIX': None,
},
},
'Linux': {
'Debian': {
'Ubuntu': None,
'Linux Mint': None
},
'Redhat': {
'CentOS': None,
'Fedora': None
},
'Gentoo': None
}
}
def count_of_all_distributions_of_linux(unix_tree):
pass
题目描述
题目来源及自己的思路
相关代码
// 请把代码文本粘贴到下方(请勿用图片代替代码)
你期待的结果是什么?实际看到的错误信息又是什么?
1 回答
![?](http://img1.sycdn.imooc.com/54584cb50001e5b302200220-100-100.jpg)
江户川乱折腾
TA贡献1851条经验 获得超5个赞
用递归的方法,很短,你看看
def get_dictkeys(dic):
key_sum = 0
for key in dic.keys():
key_sum = key_sum+1
if isinstance(dic[key], dict):
key_sum = key_sum+get_dictkeys(dic[key])
return key_sum
print get_dictkeys(unix_tree["Linux"])
添加回答
举报
0/150
提交
取消