功能说明
如果有房屋信息找到删除,提示删除成功信息;
如果没有房屋信息在系统中找不到数据,提示房屋编号不存在删除失败
思路分析
在house_operation.py文件中 , 编写del_house函数用来删除房屋信息
再定义一个find_by_id函数 去遍历房屋信息列表查找是否有该房屋信息
在main.py调用
代码实现
在house_operation文件中去新添加函数del_house
def del_house():
# 根据id删除房屋信息
print("删除房屋信息".center(32, "="))
del_id = int(input("请输入待删除的房屋编号(-1退出):"))
if del_id == -1:
print("放弃删除房屋信息".center(32, "="))
return
# 让用户确认删除(y/n),如果输入的不是y/n 就一直提示输入
while True:
key = input("请输入你的选择y/n 请确认选择")
if key.lower() == 'y' or key.lower() == 'n':
break
if key == 'y': # 如果真的要删除
# 根据del_id 去houses列表查找是否存在房屋信息
house = find_by_id(del_id)
if house:
houses.remove(house)
print("删除房屋信息成功..".center(32, "="))
else:
print("房屋编号不存在,删除失败..".center(32, "="))
else:
print("放弃删除房屋信息".center(32, "="))
再添加一个find_by_id函数,用于查找房屋信息
def find_by_id(find_id):
# 根据输入的find_id 返回对应的房屋信息(字典) 如果没有就返回none
# 遍历houses列表
for house in houses:
if house["id"] == find_id:
return house
# 如果没有return 默认就是返回none
# return None
最后在main.py中调用del_house删除房屋信息的函数
def main():
# 主函数,程序执行的入口
# 调用menu函数显示主菜单
# 循环显示菜单
while True:
main_menu()
key = input("请输入你的选择(1-6):")
if key in ["1", "2", "3", "4", "5", "6"]:
if key == "1":
add_house()
elif key == "2":
print("输入2-后面处理逻辑关系")
elif key == "3":
del_house()
elif key == "4":
print("输入4-后面处理逻辑关系")
elif key == "5":
list_houses()
elif key == "6":
break
# 测试
if __name__ == "__main__":
main()
print("你退出了程序,欢迎下次使用>>>")
运行测试
查看房屋信息列表,准备删除编号2的房屋信息
再次查看房屋列表,成功删除编号2的房屋信息