|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
十分感谢前边几位回答我问题的大神,当时没有总结全面,还有两个问题,望不吝赐教:
这是小甲鱼通讯录代码:
print("|--- 欢迎进入通讯录程序 ---|","\n","|---1:查询联系人资料---|","\n","|---2:插入新的联系人---|","\n","|---3:删除已有联系人---|","\n","|---4:退出通讯录程序---|")
address_book={"小甲鱼":"020-88974651"}
def instruction_code(code):
if code==1:#指令为1,进行查询
contact_name=input("请输入联系人姓名:")
if contact_name not in list(address_book.keys()):#查询信息是否存在
print("尚无此人信息,您可通过插入新的联系人建立此人信息!")
else:
print(contact_name+":"+address_book[contact_name])
if code==2:#修改、填加命令
contact_name=input("请输入新的联系人姓名:")
if contact_name in list(address_book.keys()):#联系人存在进行修改
print("你输入的联系人已存在 --->>"+contact_name+address_book[contact_name])
confirm=input("请确认是否进行修改YES/NO:")
if confirm=="YES" or "yes":#判断是否修改
contact_phone_number=input("请输入新联系人电话")
address_book[contact_name]=contact_phone_number
print(contact_name+":"+address_book[contact_name])
if confirm=="NO" or "no":
print(contact_name+":"+address_book[contact_name])
else:#联系人不存在直接填加
contact_phone_number=input("请输入新联系人电话号码:")
print(contact_name+":"+address_book[contact_name])
if code==3:#删除信息
contact_name=input("请输入联系人姓名:")
if contact_name in list(address_book.keys()):
address_book.pop(contact_name)
print(contact_name+"信息已经全部删除")
else:
print("查无此人信息,请确认是否有此人信息")
if code==4:#感谢
print("|---感谢使用通讯录程序---|")
code=int(input("请输入指令代码:"))
instruction_code(code)
提问的问题:
1. 为什么会多打印一次,在no的时候还是会让你输入新电话?
|--- 欢迎进入通讯录程序 ---|
|---1:查询联系人资料---|
|---2:插入新的联系人---|
|---3:删除已有联系人---|
|---4:退出通讯录程序---|
请输入指令代码:2
请输入新的联系人姓名:小甲鱼
你输入的联系人已存在 --->>小甲鱼020-88974651
请确认是否进行修改YES/NO:yes
请输入新联系人电话9876663
小甲鱼:9876663
小甲鱼:9876663
|--- 欢迎进入通讯录程序 ---|
|---1:查询联系人资料---|
|---2:插入新的联系人---|
|---3:删除已有联系人---|
|---4:退出通讯录程序---|
请输入指令代码:2
请输入新的联系人姓名:小甲鱼
你输入的联系人已存在 --->>小甲鱼020-88974651
请确认是否进行修改YES/NO:no
请输入新联系人电话98765
小甲鱼:98765
小甲鱼:98765
2.可以吧里边最后输出的print(),换成return,最后print(instruction_code(code))吗?
- confirm=="YES" or "yes"
- confirm=="NO" or "no"
复制代码
有问题,相当于永远是True(因为非空的字符串代表True)
应该这样:
- confirm=="YES" or confirm=="yes"
- confirm=="NO" or confirm=="no"
复制代码
2.可以,但是假如你不返回任何东西(return)就会输出None
|
|