Python程序根据子列表中的第二个元素对列表进行排序。

给定列表,我们的任务是根据子列表中的第二个元素对列表进行排序。在这里,我们应用简单的冒泡排序。

示例

Input : [['CCC', 15], ['AAA', 10], ['RRRR', 2],['XXXX', 150]]
Output : [['RRRR', 2], ['AAA', 10], ['CCC', 15], ['XXXX', 150]]

算法

Step 1: Given a list.
Step 2: We have tried to access the second element of the sublists using the nested loops.
Step 3: Traverse through all array elements.
Step 4: Last i elements are already in place.
Step 5: traverse the array from 0 to n-i-1.
Step 6: Swap if the element found is greater than the next element.

范例程式码

# Python program to sort the lists using the second element of sublist
# In place way to sort, use of third variable.
def sortlist(A):
   l = len(A)
   for i in range(0, l):
   for j in range(0, l-i-1):
   if (A[j][1] > A[j + 1][1]):
      tempo = A[j]
      A[j]= A[j + 1]
      A[j + 1]= tempo
      return A

   # Driver Code
A = [['AAA', 10], ['CCC', 15], ['RRRR', 2], ['XXXX', 150]]
print(sortlist(A))

输出结果

[['RRRR', 2], ['AAA', 10], ['CCC', 15], ['XXXX', 150]]