用python编写代码:已知字典dicAreas中包含了各个国家的国土面积;字典 dicCapitals中包含了各个国家的首都。请编写程序将两个字典 合并为一个新的字典dicCountries,在其中保存各个国家的首 都和国土面积信息。
时间: 2024-10-13 17:05:13 浏览: 71
当然可以。在Python中,你可以通过字典推导式(Dictionary Comprehension)轻松地完成这个任务。假设`dicAreas`和`dicCapitals`结构如下:
```python
dicAreas = {
'China': 9600000,
'USA': 9372615,
'Russia': 17098242,
# 更多国家...
}
dicCapitals = {
'China': 'Beijing',
'USA': 'Washington D.C.',
'Russia': 'Moscow',
# 更多国家...
}
```
你可以使用下面的代码将它们合并到一个新的字典`dicCountries`中:
```python
dicCountries = {country: {'Capital': capital, 'Area': area} for country, area in dicAreas.items() for capital in (dicCapitals.get(country, 'Unknown') if country in dicCapitals else 'Unknown')}
```
这里我们遍历了`dicAreas`中的每个键(国家),如果该国也在`dicCapitals`中,我们就取对应的首都,否则设置为'Unknown'。然后将结果添加到新字典`dicCountries`中。
注意:在实际运行时,如果某国只出现在`dicAreas`而不出现在`dicCapitals`,`get(country, 'Unknown')`会返回默认值'Unknown'。
阅读全文