Python 排序,第一个 key 降序,如果相同,第二个 key 升序,这种是不是只能硬写? - V2EX
请不要在回答技术问题时复制粘贴 AI 生成的内容
whx20202

Python 排序,第一个 key 降序,如果相同,第二个 key 升序,这种是不是只能硬写?

  •  
  •   whx20202 Mar 28, 2017 5292 views
    This topic created in 3336 days ago, the information mentioned may be changed or developed.

    突然想知道有没有什么简短的方法,在性能不是主要问题的时候

    百度了一下好像有个 DSU 能用一下

    15 replies    2017-03-28 17:36:30 +08:00
    Monad
        1
    Monad  
       Mar 28, 2017 via iPhone   1
    想优雅而不考虑性能可以 sort 两次
    第一次随意 sort
    第二次 stable_sort
    kingmo888
        2
    kingmo888  
       Mar 28, 2017
    好像说, pandas 多好。
    Lycnir
        3
    Lycnir  
       Mar 28, 2017
    sorted 里面的 key 参数不能处理这个问题吗?
    ryd994
        4
    ryd994  
       Mar 28, 2017 via Android   1
    活用 cmp 参数就行了,不需要两次
    python3 可以用 cmptokey 转换

    或者直接 key=(key1, -key2)仅限于 key 是数字的情况

    rtfm
    glasslion
        5
    glasslion  
       Mar 28, 2017
    sorted(lst, key = lambda x: (x[0], -x[1])) 不就行了
    Finest
        6
    Finest  
       Mar 28, 2017
    sorted(cmp=)不是有这个可以传函数进去吗?
    whx20202
        7
    whx20202  
    OP
       Mar 28, 2017
    66666 各种方式 学到了
    wplct
        8
    wplct  
       Mar 28, 2017
    python 都支持用方法排序了,想怎么样都可以啊
    mxi1
        9
    mxi1  
       Mar 28, 2017 via iPhone
    前几天才在知乎上看到这个利用 sort 的 key 来实现多种排序方法的语法糖示例, https://www.zhihu.com/question/57470958/answer/153398323
    laike9m
        10
    laike9m  
       Mar 28, 2017   1
    @mxi1 ()ノ
    KIDJourney
        11
    KIDJourney  
       Mar 28, 2017
    为什么会有人把这个当成语法糖。
    mxi1
        12
    mxi1  
       Mar 28, 2017 via iPhone
    @KIDJourney 估计是参考其他语言的设计来说的,比如 C#就有很多语法糖
    ryd994
        13
    ryd994  
       Mar 28, 2017 via Android
    @mxi1 这不叫语法糖……… C++也是这样的啊
    phithon
        14
    phithon  
       Mar 28, 2017
    曾用过的一个方法,好像并不简短,但每次要用的时候都会拿来用,方便

    https://gist.github.com/phith0n/20ad17cbd487a833ad3022d366d63f04
    KIDJourney
        15
    KIDJourney  
       Mar 28, 2017
    @mxi1 这是个锤子的语法糖啊。

    你觉得这个是语法糖吗。

    https://gist.github.com/KIDJourney/0ec45fd79c049b21b9911b9b36b218f8
    About     Help     Advertise     Blog     API     FAQ     Solana     1000 Online   Highest 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 49ms UTC 23:06 PVG 07:06 LAX 16:06 JFK 19:06
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86