假设字典dic_city中存放了每个人旅游过的城市,内容为张三丰,北京,成都;李茉绸,上海,广州,兰州;慕容福,太原,西安,济南,上海。试编写程序,实现以下功能统计。 (1)、每个人旅游过的城市的数目。输出结果如下: 张三丰去过两个城市; 李茉绸去过三个城市; 慕容福去过四个城市。 (2)、统计去过上海的人数以及名单。输出结果如下: 去过上海的有2人,他们是李茉绸、慕容福
时间: 2024-03-24 17:41:44 浏览: 46
好的,这是一个简单的 Python 编程问题。以下是代码实现:
```python
# 定义字典,存储每个人去过的城市
dic_city = {
'张三丰': ['北京', '成都'],
'李茉绸': ['上海', '广州', '兰州'],
'慕容福': ['太原', '西安', '济南', '上海']
}
# 统计每个人去过的城市数目
for name, cities in dic_city.items():
print(f"{name}去过{len(cities)}个城市;")
# 统计去过上海的人数以及名单
count = 0
names = []
for name, cities in dic_city.items():
if '上海' in cities:
count += 1
names.append(name)
print(f"去过上海的有{count}人,他们是{'、'.join(names)}。")
```
输出结果为:
```
张三丰去过2个城市;
李茉绸去过3个城市;
慕容福去过4个城市;
去过上海的有2人,他们是李茉绸、慕容福。
```
希望能解决你的问题!
相关问题
假设字典 dic_city 中存放了每一个人旅游的城市,内容为{"张三":["广州","北京","上海"],"李四":["重庆","兰州"],"王五":["太原","上海","济南","北京"]。试编写程序,实现以下功 能。 (1)统计每个人旅游过的城市的数目。输出结果如下: 张三去过 2 个城市 李四去了(2)统计去过上海的名单和人数。输出结果如下: 去过上海 的人是张三和王五,一共是 2 人。
实现代码如下:
```python
# 定义旅游字典
dic_city = {"张三":["广州","北京","上海"],"李四":["重庆","兰州"],"王五":["太原","上海","济南","北京"]}
# 统计每个人旅游过的城市数目
for name, cities in dic_city.items():
print(name, "去过", len(cities), "个城市")
# 统计去过上海的名单和人数
count = 0
people = []
for name, cities in dic_city.items():
if "上海" in cities:
count += 1
people.append(name)
print("去过上海的人是", "和".join(people), ",一共是", count, "人。")
```
输出结果如下:
```
张三 去过 3 个城市
李四 去过 2 个城市
王五 去过 4 个城市
去过上海的人是 张三 和 王五 ,一共是 2 人。
```
9. 假设字典 dic_city 中存放了每一个人旅游的城市,内容为{"张三":["广州","北京","上海"],"李四":["重庆","兰州"],"王五":["太原","上海","济南","北京"]。试编写程序,实现以下功 能。 (1)统计每个人旅游过的城市的数目。输出结果如下: 张三去过 2 个城市 李四去了(2)统计去过上海的名单和人数。输出结果如下: 去过上海 的人是张三和王五,一共是 2 人。
可以使用字典来存储每个人去过的城市,然后根据需要进行统计。
统计每个人旅游过的城市的数目,可以遍历字典中的每个键值对,使用 len() 函数计算每个人去过的城市数目。代码如下:
```python
dic_city = {"张三": ["广州", "北京", "上海"], "李四": ["重庆", "兰州"], "王五": ["太原", "上海", "济南", "北京"]}
for name, cities in dic_city.items():
print(f"{name}去过{len(cities)}个城市")
```
输出结果为:
```
张三去过3个城市
李四去过2个城市
王五去过4个城市
```
统计去过上海的名单和人数,可以遍历字典中的每个键值对,对于每个人的城市列表,检查是否包含上海,如果包含,则将这个人的姓名添加到名单列表中,并将人数计数器加 1。代码如下:
```python
dic_city = {"张三": ["广州", "北京", "上海"], "李四": ["重庆", "兰州"], "王五": ["太原", "上海", "济南", "北京"]}
name_list = []
count = 0
for name, cities in dic_city.items():
if "上海" in cities:
name_list.append(name)
count += 1
print(f"去过上海的人是{name_list},一共是{count}人。")
```
输出结果为:
```
去过上海的人是['张三', '王五'],一共是2人。
```