我正在使用
Python 2.7,仍在学习字典.我专注于为字典执行数值计算,需要一些帮助.
我有一本字典,我想对其中的值进行平方:
dict1 = {'dog': {'shepherd': 5,'collie': 15,'poodle': 3,'terrier': 20},'cat': {'siamese': 3,'persian': 2,'dsh': 16,'dls': 16},'bird': {'budgie': 20,'finch': 35,'cockatoo': 1,'parrot': 2}
我想要:
dict1 = {'dog': {'shepherd': 25,'collie': 225,'poodle': 9,'terrier': 400},'cat': {'siamese': 9,'persian': 4,'dsh': 256,'dls': 256},'bird': {'budgie': 400,'finch': 1225,'parrot': 4}
我试过了:
dict1_squared = dict**2. dict1_squared = pow(dict,2.) dict1_squared = {key: pow(value,2.) for key,value in dict1.items()}
我的尝试没有任何成功.
解决方法
你非常接近字典理解.问题是您的解决方案中的值本身就是字典,所以您也必须迭代它.
dict1_squared = {key: {k: pow(v,2) for k,v in value.items()} for key,value in dict1.items()}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。