如何在python中为列表的每个元素指定名称

如何在python中为列表的每个元素指定名称,python,list,sorting,Python,List,Sorting,考虑下面的代码,它根据其他列表内容对列表进行排序。 我的问题与排序列表有关。我想为每个元素指定一个名称,并打印排序后的名称,而不是元素。是否有任何帮助 Processes = input(" Enter the processes times & arrival times separated by a comma: ") BurstTimes = Processes[::2] ArrivalTimes = Processes[1::2] print ' Burst

考虑下面的代码,它根据其他列表内容对列表进行排序。
我的问题与排序列表有关。我想为每个元素指定一个名称,并打印排序后的名称,而不是元素。是否有任何帮助

 Processes = input("   Enter the  processes times & arrival times separated by a comma: ")
 BurstTimes = Processes[::2]
 ArrivalTimes = Processes[1::2]
 print '   Burst Times:', BurstTimes, '\n', '   Arrival Times', ArrivalTimes,'\n',
 list1, list2 =  BurstTimes, ArrivalTimes
 indices1 = range(len(list1))
 indices1.sort(key=lambda x: list2[x])
 list1 = map(lambda i: list1[i], indices1)
 print 'The Processes executed in this order: ', list1 
例如,输入列表包含元素19 14 36 如何为每个元素指定一个名称,例如a代表第一个元素,B代表第二个元素,C代表第三个元素
输出是排序列表(14、19、36),但控制台上的打印列表我希望是(B、A、C)

要为列表中的每个元素指定名称,您应该使用
字典

以下是一个例子:

a = {'apple': 2, 'banana': 4, 'watermelon': 5}
字典的形式为
{key:value,key:value,key:value,…}

您可以在字典中获得与其
键相对应的
。在上面的示例中,您将执行以下操作:

>>> print a['apple']
2
>>> a['banana']+a['watermelon']
5
您可以访问字典中的
,或同时访问这两个键,如下所示:

>>> a.keys()
['apple', 'banana', 'watermelon']

>>> a.values()
[2,4,5]

>>> a.items()
[('apple', 2), ('banana', 4), ('watermelon', 5)]
但是,您必须注意,字典不会进行排序,并且会以更有效的方式包含数据。如果您可以了解元素的顺序,请使用

要从两个列表中创建dict,可以执行以下操作:

my_dict = dict(zip(list1, list2))

很好,但如何将其应用于未知的sizi用户输入数组它可以是一个={'apple':list[0],'banana':list(1)等等?@user3547642,请看我的答案。更新了最后一行非常努力,但答案似乎离我的问题有点远。我想在排序之前为列表中的每个元素指定一个名称,并以名称而不是元素打印排序后的列表,请注意列表的大小未知,因为它是用户input@user3547642,我不明白。你能吗u请用列表的样子、之后的样子以及预期输出的示例更新您的问题。@sshashank124问题已更新