python 34课try 的课后题,不懂,求解。
其它的代码我就不打,打关键的。原来的代码是:
if instr == 2:
name = input("请输入联系人姓名:")
if name in contacts:
print("你输入的姓名在通讯录中已存在-->>",end="")
print(name+":"+contacts)
if input("是否修改用户资料(YES/NO):")=="YES":
contacts=input("请输入用户联系电话:")
else:
contacts=input("请输入用户联系电话:")
这个很好理解,把它改为用try语句后:
if instr == 2:
name=input("请输入联系人姓名:")
try:
print("你输入的姓名在通讯录中已存在-->>",end="")
print(name+":"+contacts)
if input("是否修改用户资料(YES/NO):")=="YES":
contacts=input("请输入用户联系电话:")
except KeyError:
contacts=input("请输入用户联系电话:")
try语句没有判断name 是否在contacts中啊,不明白啊。 这样子就算已经判断了。
如果 name in contacts,print(name+":"+contacts)
这一句就不会报错,否则就会报错,然后不会运行try,会运行expect,也就是 name not in contacts。 这样改:
if instr == 2:
name = input("请输入联系人姓名:")
try:
print("你输入的姓名在通讯录中已存在-->>" + name+":"+contacts)
if input("是否修改用户资料(YES/NO):")=="YES":
contacts=input("请输入用户联系电话:")
except KeyError:
contacts=input("请输入用户联系电话:") try:
contacts
print('您输入的姓名在通讯录中已存在 -->> ', end='')
print(name + ' : ' + contacts)
if input('是否修改用户资料(YES/NO):') == 'YES':
contacts = input('请输入用户联系电话:')
except KeyError:
contacts = input('请输入用户联系电话:')
红字这个是可以删除的吗?
页:
[1]