请用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”时,在新的一行输出字典。
时间: 2023-12-03 11:45:05 浏览: 150
以下是实现该程序的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 中编写测试通过。
阅读全文