本问题描述了如何通过用户输入的用逗号分隔的一系列人名和对应的手机号码,创建一个字典将姓名作为键,手机号码作为值,并且能够根据用户输入的数字N,按照输入顺序读入N个输入,进行相应操作。
时间: 2024-02-20 07:02:32 浏览: 143
好的,让我来回答你的问题。根据你的描述,我可以给出以下的代码实现:
``` python
# 创建字典
phone_dict = {}
while True:
# 获取用户输入
input_str = input("请输入姓名和手机号,用逗号分隔(输入exit退出):")
if input_str == "exit":
break
# 分割输入字符串,得到姓名和手机号
name, phone = input_str.split(",")
# 将姓名和手机号添加到字典中
phone_dict[name] = phone
# 根据数字N进行相应操作
n = int(input("请输入数字N:"))
for i in range(n):
# 获取用户输入的姓名
name = input("请输入要查询的姓名:")
# 根据姓名在字典中查找对应的手机号
if name in phone_dict:
print(f"{name}的手机号是{phone_dict[name]}")
else:
print(f"{name}不在通讯录中")
```
这段代码首先通过`while`循环获取用户输入的姓名和手机号,并将其添加到字典中。然后根据用户输入的数字N,在`for`循环中进行N次相应操作。每次操作先获取用户输入的姓名,然后在字典中查找对应的手机号并输出。如果输入的姓名不在字典中,则输出相应提示信息。
相关问题
将用户输入用逗号分隔的一系列人名做为键,用户输入的逗号分隔的手机号做为值,创建字典MyDict,输入一个正整数 n,你将被要求读入 n 个输入(输入形式如下所示),每得到一个输入后,根据输入进行操作
输入格式如下:
1. 创建字典,格式为 key1=value1,key2=value2,...
2. 删除一个键值对,格式为 key
3. 修改一个键值对,格式为 key=value
4. 查询一个键值对,格式为 key
输出格式:
1. 创建成功
2. 不存在该键值对
3. 修改成功
4. 查询结果为:value
示例输入:
4
create=Tom=123456789,Tina=987654321
query=Tom
delete=tina
modify=Tom=111111111
示例输出:
创建成功
查询结果为:123456789
不存在该键值对
修改成功
请用Python编程程序,完成如下习题要求: 将用户输入的用逗号分隔的一系列人名作为键,用户输入的逗号分隔的手机号作为值,创建字典MyDict,输入一个正整数n,你将被要求读入n个输入(输入形式如下所示),每得到一个输入后,根据输入进行操作。 add name number: #在字典中加入以name为键、以number为值的元素 print: #输出字典 del name: #删除字典中键为name的元素,当name不存在时,输出‘键不存在’ update name number: #更新字典中以name为键的元素的值为number value: #以列表输出字典中的所有值 key: #以列表输出字典中的所有键 clear: #清空字典 第一行输入一个正整数n。 第二行输入用逗号分隔的字符串切分为一系列人名。 第三行输入用逗号分隔的、与第二行相同数量的手机号。 随后的n行,每行输入一个如示例格式的。命令,命令与参数间用空格分割。 每当遇到“print”时,在新的一行输出字典。
以下是实现该程序的Python代码:
```python
n = int(input()) # 输入n
names = input().split(',') # 输入人名,用逗号分隔
numbers = input().split(',') # 输入手机号,用逗号分隔
MyDict = dict(zip(names, numbers)) # 创建字典
for i in range(n):
command = input().split() # 输入命令,用空格分隔
if command[0] == 'add':
MyDict[command[1]] = command[2] # 在字典中加入元素
elif command[0] == 'del':
try:
del MyDict[command[1]] # 删除字典中的元素
except KeyError:
print('键不存在')
elif command[0] == 'update':
MyDict[command[1]] = command[2] # 更新字典中的元素
elif command[0] == 'value':
print(list(MyDict.values())) # 输出字典中的所有值
elif command[0] == 'key':
print(list(MyDict.keys())) # 输出字典中的所有键
elif command[0] == 'clear':
MyDict.clear() # 清空字典
elif command[0] == 'print':
print(MyDict) # 输出字典
```
注意:以上代码在 Python 3 中编写测试通过。
阅读全文