|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 ChuckCheng 于 2018-9-9 15:00 编辑
25讲通讯录程序中,注意一个小问题。以下是正确的代码,但是在tenp=1的条件语句,如果把 print('\n')和 temp=input('请输入相关指令代码:') 都往后一个空格和前一个print对齐的话,为什么会出现一个死循环
正确的代码
print('''|---欢迎进入通讯程序---|
|---1:查询联系人资料---|
|---2:插入新的联系人---|
|---3:删除已有联系人---|
|---4:退出通讯录程序---|''')
print('\n')
contact={} #设计一个 空的字典
name=list(contact)#这样是去除字典中的键,作为一个列表,方便后面处理
temp=input('请输入相关指令代码:')
while temp!='4':##循环
if temp=='2':
info=input('请输入联系人姓名:')
if info not in name: ##如果输入的名不在字典中,则创建一个
num=input('请输入用户联系电话:')
contact[info]=num ##输入电话号码
else:
print('您输入的姓名在通讯录中已存在--->>',info,':',contact[info])
remedy=input('是否修改用户资料(YES/NO):')
if remedy=='YES':
num=input('请输入用户联系电话:') ##修改电话号码
contact[info]=num
name=list(contact) ##其实这里不用更新name,因为改变只是value电话号码,姓名并没有少
print('\n')
temp=input('请输入相关指令代码:')
elif temp=='1':
check=input('请输入联系人姓名:')
if check in name:
print(check,':',contact[check])
else:
print('通讯录中无此人')
print('\n')
temp=input('请输入相关指令代码:')
elif temp=='3':
factor=input('输入删除对象:')
if factor not in name:
print('用户不存在')
else:
name.remove(factor)
print('\n')
temp=input('请输入相关指令代码:')
else:
temp=input('输入错误,请输入相关指令代码:')
print('\n')
print('|---感谢使用通讯录程序---|')
有问题的代码:
print('''|---欢迎进入通讯程序---|
|---1:查询联系人资料---|
|---2:插入新的联系人---|
|---3:删除已有联系人---|
|---4:退出通讯录程序---|''')
print('\n')
contact={} #设计一个 空的字典
name=list(contact)#这样是去除字典中的键,作为一个列表,方便后面处理
temp=input('请输入相关指令代码:')
while temp!='4':##循环
if temp=='2':
info=input('请输入联系人姓名:')
if info not in name: ##如果输入的名不在字典中,则创建一个
num=input('请输入用户联系电话:')
contact[info]=num ##输入电话号码
else:
print('您输入的姓名在通讯录中已存在--->>',info,':',contact[info])
remedy=input('是否修改用户资料(YES/NO):')
if remedy=='YES':
num=input('请输入用户联系电话:') ##修改电话号码
contact[info]=num
name=list(contact) ##其实这里不用更新name,因为改变只是value电话号码,姓名并没有少
print('\n')
temp=input('请输入相关指令代码:')
elif temp=='1':
check=input('请输入联系人姓名:')
if check in name:
print(check,':',contact[check])
else:
print('通讯录中无此人')
print('\n') ########对齐之后,会出现死循环,这是为什么
temp=input('请输入相关指令代码:')
elif temp=='3':
factor=input('输入删除对象:')
if factor not in name:
print('用户不存在')
else:
name.remove(factor)
print('\n')
temp=input('请输入相关指令代码:')
else:
temp=input('输入错误,请输入相关指令代码:')
print('\n')
print('|---感谢使用通讯录程序---|')
|
-
死循环
|