【问题描述】 先根据输入的姓名和电话号码,定义一个电话簿,直到输入0为止。 然后再根据输入的人名,查询他的号码。 【输入形式】 分多行输入每个人的姓名和电话号码,姓名与电话号码之间用冒号分隔 数字0 人名,是一个字符串。 【输出形式】 电话号码。如果该人不存在,返回"not found"
时间: 2024-02-21 11:00:53 浏览: 58
这是一个电话簿查询的问题,我可以为您提供一个 Python 的解决方案,如下所示:
```python
# 定义一个空字典,用来存储电话簿信息
phone_book = {}
# 循环读入每个人的姓名和电话号码,直到输入 0 为止
while True:
line = input().strip() # 去除输入字符串两端的空格
if line == '0':
break
name, phone = line.split(':') # 使用冒号分割姓名和电话号码
phone_book[name.strip()] = phone.strip() # 存入字典中,去除姓名和电话号码两端的空格
# 根据输入的人名查询其电话号码
name = input().strip()
if name in phone_book:
print(phone_book[name])
else:
print("not found")
```
在上面的代码中,我们首先定义了一个空字典 `phone_book`,用来存储电话簿信息。然后使用 `while` 循环读入每个人的姓名和电话号码,直到输入了数字 0 为止。在每次循环中,我们使用 `input()` 函数读入一行字符串,然后使用 `split()` 函数将姓名和电话号码分开,并去除两端的空格,最后将其存入 `phone_book` 字典中,以姓名为键,电话号码为值。
接下来,我们再次使用 `input()` 函数读入一个人的姓名,然后在 `phone_book` 字典中查找其电话号码。如果找到了,则输出其电话号码;否则,输出字符串 `not found`。
阅读全文