从Dictionary中删除不同key对应的值



我是python的新手,我正在编写航班预订系统程序。我在删除乘客详细信息时遇到了删除问题,因为我有多个键的字典,键的值在单独的单独列表中。

我尝试了多种方法使用pop函数,它只删除特定的键和相应的值

如何删除不同键乘客信息的所有值。

例如:如果用户输入'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}

请帮帮我。

Thanks in Advance

更适合存储数据的数据结构是dict中的list,其中每个字典代表一个乘客对象。(或者,如果某些东西对于passenger是唯一的,比如passenger_id,使用它来创建字典的字典,passenger_id作为主字典的键)

然而,在你当前的数据结构中,你可以这样做:

  • 步骤1:得到基于Passenger的乘客指数。如果在列表

    中没有找到name,将引发ValueError异常。
    passenger_index = Passenger_dict['Passenger'].index(Passenger)
    
  • 步骤2:从所有列表中删除位于passenger_index索引的元素

    for v in Passenger_dict.values():
    del v[passenger_index]
    

相关内容

  • 没有找到相关文章

最新更新