如何解决从字典中删除具有不同键的对应值
我是 Python 新手,正在编写航班预订系统程序。我在删除乘客详细信息时遇到了删除问题,因为我有包含多个键的字典,并且键的值位于单独的单独列表中。
我尝试了多种使用 pop 函数的方法,它只删除特定的 Key 和相应的值
如何用不同的键删除Passenger Detail的所有值。
例如:是用户输入'tes'然后我需要删除相应的flightId、Age、destination、dlytype、source
我收到如下用户输入
Passenger = raw_input("Enter Name to delete")
字典值显示如下:
{'Passenger': ['tes','ssss'],'FlightId': ['ssss','tre'],'Age': ['12','34'],'Destination': ['ssss','ssssss'],'Flytype': ['economy','business'],'Source': ['sss','sssss']}
字典声明:
Name_list=[]
Age_list=[]
Source_list=[]
Destination_list=[]
Flytype_list=[]
FlightId_list=[]
Passenger_dict= {'Passenger':Name_list,'Age':Age_list,'Source':Source_list,'Destination':Destination_list,'Flytype':Flytype_list,'FlightId':FlightId_list}
请帮忙解决这个问题。
提前致谢
解决方法
更好的数据结构来存储您的数据将是 list
个 dict
,其中每个 dict 将代表一个乘客对象。 (或者,如果某些东西对乘客来说是独一无二的,例如 passenger_id,请使用它来创建字典的字典,其中 passenger_id
作为主字典的键)
但是,在您当前的数据结构中,您可以执行以下操作:
-
第 1 步: 根据
Passenger
获取乘客索引。如果在列表中找不到ValueError
,它将引发name
异常passenger_index = Passenger_dict['Passenger'].index(Passenger)
-
第 2 步:从所有列表中删除
passenger_index
索引处的元素for v in Passenger_dict.values(): del v[passenger_index]
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。