python – 字典的平方值

我正在使用 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()}

相关文章

功能概要:(目前已实现功能)公共展示部分:1.网站首页展示...
大体上把Python中的数据类型分为如下几类: Number(数字) ...
开发之前第一步,就是构造整个的项目结构。这就好比作一幅画...
源码编译方式安装Apache首先下载Apache源码压缩包,地址为ht...
前面说完了此项目的创建及数据模型设计的过程。如果未看过,...
python中常用的写爬虫的库有urllib2、requests,对于大多数比...