1. 程式人生 > >使用sort對list進行倒序排序

使用sort對list進行倒序排序

sorted有4個引數sorted(iterable,cmp,key,reverse)

iterable是需要排序的變數,cmp 和C語言裡面的差不多,key是排序的關鍵字,reverse是是否倒序(True/False,注意區分大小寫)

能夠正確執行的排序如下:

>>> a=[['a',0],['b',1],['c',3]]
>>> bb=sorted(a,key=lambda x:x[1],reverse=True)

注意這裡的lambda後面跟的x:x[1]相當於自定義的函式裡面的引數,x[1]表示list裡面的第二個。

結果如下:

>>> bb
[['c', 3], ['b', 1], ['a', 0]]

>>> a
[['a', 0], ['b', 1], ['c', 3]]
注意使用sorted之後原來的那個變數並沒有改變,而是儲存在新的變數裡面(如這裡的bb),但sort排序之後變數記憶體儲的是排序後的結果

相關推薦

使用sortlist進行排序

sorted有4個引數sorted(iterable,cmp,key,reverse)iterable是需要排序的變數,cmp 和C語言裡面的差不多,key是排序的關鍵字,reverse是是否倒序(True/False,注意區分大小寫)能夠正確執行的排序如下:>>

MapReduce 統計手機使用者的上行流量,下行流量,總流量,並輸出的結果進行排序。(二),劃分省份,輸出到不同的檔案

在(一)的基礎上,寫一個自己的partitioner就好了。   分割槽的預設實現HashPartitioner,它根據key的hashcode和Interger.  在Reduce過程中,可以根據實際需求(比如按某個維度進行歸檔,類似於資料庫的分組),把Map完的資

MapReduce 統計手機使用者的上行流量,下行流量,總流量,並輸出的結果進行排序。(一)

  首先,要知道hadoop自帶的LongWritable 是沒辦法儲存三個變數,即使用者的上行流量,下行流量,總流量。 這個時候,沒辦法,你就要去寫一個屬於你自己的介面,去實現能夠放入這三個資料。 MapReduce中傳輸自定義資料型別(Bean->setter+

MapReduce 統計手機使用者的上行流量,下行流量,總流量,並輸出的結果進行排序

首先,要知道hadoop自帶的LongWritable 是沒辦法儲存三個變數,即使用者的上行流量,下行流量,總流量。 這個時候,沒辦法,你就要去寫一個屬於你自己的介面,去實現能夠放入這三個資料。 這裡定義為flowbean,實現WritableComparable

Java英文句子進行排序

轉自:http://www.sharejs.com/codes/java/6831 /** * 工具類 * @author Administrator * */ public class Util { /** * 判斷一個字元是否是字母

Python 的切片操作以及 利用步長序列進行取值

切片操作: 對於具有序列結構的資料來說,切片操作的方法是:consequence[start_index: end_index: step]。 start_index:表示是第一個元素物件,正索引位置預設為0;負索引位置預設為 -len(consequence) e

java collection.sort() 根據物件的某個屬性list進行排序

1基本型別的list排序/** * 對List物件按照某個成員變數進行排序 * @param list List物件 * @param sortField 排序的屬性名稱 * @param sortMode 排序方式:ASC,DESC 任選其

[C#] List進行分組排序後輸出

pos 學生 new C# src key 輸出 分組 groupby Student 類: public class Student { public int ID { get; set; } public string

sorted 與 sort的區別 正向排序 reverse()列表反向排序 與列表數字排序

ever pre 倒序 rev 所有 sorted 序列 字典 有效 >>> a = [1,3,6,7,4] >>> >>> sorted(a) [1, 3, 4, 6, 7] >>> >&g

java list的正排序

public static void main(String[] args) { List<Integer> list = new ArrayList<Integer>(); list.add(1); list.add(10

4. 陣列int[] intArr = new int[]{5,9,3,7,2,6},寫出一個函式可根據傳參(引數為需要獲取的陣列型別:1:正排序陣列;2:排序陣列;)來進行排序,返回值為int

4. 陣列int[] intArr = new int[]{5,9,3,7,2,6},寫出一個函式可根據傳參(引數為需要獲取的陣列型別:1:正序排序陣列;2:倒序排序陣列;)來進行排序,返回值為int陣

java List 排序 Collections.sort() List 排序(首先年齡排序,如果年齡相同,則按名字排序)

第一種 /* * Collections可以針對ArrayList儲存基本包裝類的元素排序,儲存自定義物件可不可以排序呢? */ public class CollectionsDemo { public static void main(String[] args

題目及解答:策略模式+泛型(Person類按姓名、id、年齡正排序

題目要求: 加入有若干個Person類物件存在一個List當中,對它們進行排序,分別按照名字、年齡、id號進行排序(要有正序和倒序兩種方式)。加入年齡或者姓名重複,按照id號的正序進行排序。要求使用策略模式和泛型進行。 程式如下: 1.Person類定義 pac

Java中Lamda表示式List進行排序

public class MainTest { public static void main(String[] args) { List<String> list = Arrays.asList( "2018121207","2018121206","2018121

Kotlinlist進行排序的一種方法

今天看了java排序的方法,自己用kotlin寫了一個小的list的排序,程式碼如下。 1.首先定義一個內部類,用於比較list中兩個數的大小 inner class User : Comparable<User> { var name: String

List進行排序

/** * 對List<Map>進行排序 */private List<Map<String, Object>> OrderBytoList(List<Map<String, Object>> mlist) {My

Collections.sortList排序的兩種方法

一、Collections.sort的簡單使用 說到List的排序,第一反應當然是使用Collections.sort,方便簡單。下面實現一下~~ private void sortStrings() { List<String> list = new

Collections.sort()物件進行排序

 今天要對物件排序,平時用Map的時候很多本來要用treeMap來排序的,但是看到Collections.sort()也可以對物件排序所以就做個小測試記錄下 ,以下是原始碼 : package cn.gumeng.spr

Collections.sort() List 排序

import java.util.Comparator;import java.util.List;import java.util.ArrayList;import java.util.Collections; class User { String name; String age;  public U

n以內的數字進行字典排序(java)

刷題時,遇到的問題,目前是想到了兩種方式:一種是重寫比較器;另一種是使用字串的表達方式,然後進行自然排序。 下面給出例子。 1、改寫比較器方式 package schooloffer17; im