字典 d 中存储了我国 42 所双一流高校及所在省份的对应关系,请以这个列表为数据变量,编写代码统计各省份学校的数量。实验步骤
时间: 2024-05-16 16:14:14 浏览: 166
假设字典d的格式如下所示:
```
d = {'北京市': ['清华大学', '北京大学'], '上海市': ['复旦大学', '上海交通大学'], ...}
```
可以使用 Python 的 `collections` 模块中的 `Counter` 类来统计各省份学校的数量。具体步骤如下:
1. 导入 `collections` 模块
```python
import collections
```
2. 将字典转化为列表
```python
lst = []
for province in d:
lst.extend(d[province])
```
3. 使用 `Counter` 统计每个学校出现的次数
```python
school_count = collections.Counter(lst)
```
4. 统计各省份学校的数量
```python
province_count = collections.defaultdict(int)
for province in d:
for school in d[province]:
province_count[province] += school_count[school]
```
完整代码如下:
```python
import collections
d = {'北京市': ['清华大学', '北京大学'], '上海市': ['复旦大学', '上海交通大学']}
lst = []
for province in d:
lst.extend(d[province])
school_count = collections.Counter(lst)
province_count = collections.defaultdict(int)
for province in d:
for school in d[province]:
province_count[province] += school_count[school]
print(province_count)
```
输出结果为:
```
defaultdict(<class 'int'>, {'北京市': 2, '上海市': 2})
```
表示北京市和上海市各有2所双一流高校。
阅读全文