skyshine725
V2EX  ›  问与答

python3 怎么取字典里最后一个 key

  •  
  •   skyshine725 · Oct 28, 2018 · 9583 views
    This topic created in 2940 days ago, the information mentioned may be changed or developed.
    d = {19: 7, 31: 6, 28: 5, 16: 5, 32: 5, 2: 4, 24: 4, 29: 4, 6: 4, 18: 4, 15: 4, 12: 4}
    字典是排序好的,实际会有几千个,但要用的只是最后一个 key。
    怎么取最后这个 key 呢。
    Supplement 1  ·  Oct 29, 2018
    我就是用 collections.Counter 排序的。
    排序后字典中 value 是按降序的,它在我这里表示出现最少的概率,,
    所以我只要最后一个 key (就是出现概率最少的 key )
    19 replies  •  2018-10-29 13:24:09 +08:00
    lhx2008
    lhx2008
    Oct 28, 2018
    1
    dict.keys()[-1]
    Qzier
    Qzier
    Oct 28, 2018 via iPhone
    2
    字典是无序的
    0ZXYDDu796nVCFxq
    0ZXYDDu796nVCFxq
    Oct 28, 2018 via Android
    3
    3.6 开始是有序的,但不保证顺序固定
    Trim21
    Trim21
    Oct 28, 2018
    4
    @gstqc #3 3.7 开始已经保证了
    Osk
    Osk
    Oct 28, 2018
    5
    sorted(dict)[-1] ???

    这样就不用依赖特定 python 版本的实现了.
    Yourshell
    Yourshell
    Oct 28, 2018
    6
    你知道怎么排序不知道怎么取最后一个也是神奇
    ppyybb
    ppyybb
    Oct 28, 2018 via iPhone
    7
    怎么定义最后:
    1 最后放进去的
    2 按照 key 排序最后一个

    如果是 1 的话那么自己封装一个,是 2 依赖 python 版本,楼上已经讲的很清楚了
    jingniao
    jingniao
    Oct 28, 2018 via Android
    8
    3.7 保证的是最后的是放进去的顺序吧
    holyghost
    holyghost
    Oct 28, 2018
    9
    你需要一个 PHP
    Wincer
    Wincer
    Oct 28, 2018 via Android
    10
    不要用字典,字典是无序的,用 orderdict
    veightz
    veightz
    Oct 28, 2018 via Android❤️2
    11
    看到下面诸多评论,我对这门语言感到更窒息了。。
    ericls
    ericls
    Oct 28, 2018 via iPhone
    12
    @Trim21 只是 cpython 保证吧?
    thinker3
    thinker3
    Oct 28, 2018
    13
    @veightz 不会用而已,取字典里最后一个 key 是伪需求
    sikariba
    sikariba
    Oct 28, 2018
    14
    @ericls #12 貌似 PyPy 很早就有了,CPython 从 3.6 开始支持。现在从 3.7 开始是整个 python 的 language feature 了
    SuperMild
    SuperMild
    Oct 28, 2018
    15
    python 3.7 保证的顺序是 LIFO, 这与楼主所说的“排序”可能不是一回事,楼主说的“最后一个”不知道具体是指什么顺序的“最后”。
    xschaoya
    xschaoya
    Oct 29, 2018 via Android
    16
    collections 模块了解一下,有序字典结构
    skyshine725
    skyshine725
    OP
    Oct 29, 2018
    17
    dict.keys()[-1]
    TypeError: 'dict_keys' object does not support indexing
    dbw9580
    dbw9580
    Oct 29, 2018 via Android❤️1
    18
    skyshine725
    skyshine725
    OP
    Oct 29, 2018
    19
    你那什么网址,打开乱七八糟的网站
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   880 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 53ms · UTC 20:13 · PVG 04:13 · LAX 12:13 · JFK 15:13
    ♥ Do have faith in what you're doing.