突然想知道有没有什么简短的方法,在性能不是主要问题的时候
百度了一下好像有个 DSU 能用一下
1
Monad 2017-03-28 11:25:31 +08:00 via iPhone 1
想优雅而不考虑性能可以 sort 两次
第一次随意 sort 第二次 stable_sort |
2
kingmo888 2017-03-28 11:30:05 +08:00
好像说, pandas 多好。
|
3
Lycnir 2017-03-28 11:30:19 +08:00
sorted 里面的 key 参数不能处理这个问题吗?
|
4
ryd994 2017-03-28 11:31:08 +08:00 via Android 1
活用 cmp 参数就行了,不需要两次
python3 可以用 cmptokey 转换 或者直接 key=(key1, -key2)仅限于 key 是数字的情况 rtfm |
5
glasslion 2017-03-28 11:32:53 +08:00
sorted(lst, key = lambda x: (x[0], -x[1])) 不就行了
|
6
hand515 2017-03-28 11:33:11 +08:00
sorted(cmp=)不是有这个可以传函数进去吗?
|
7
whx20202 OP 66666 各种方式 学到了
|
8
wplct 2017-03-28 11:53:58 +08:00
python 都支持用方法排序了,想怎么样都可以啊
|
9
mxi1 2017-03-28 11:57:11 +08:00 via iPhone
前几天才在知乎上看到这个利用 sort 的 key 来实现多种排序方法的语法糖示例, https://www.zhihu.com/question/57470958/answer/153398323
|
11
KIDJourney 2017-03-28 13:08:20 +08:00
为什么会有人把这个当成语法糖。
|
12
mxi1 2017-03-28 13:34:48 +08:00 via iPhone
@KIDJourney 估计是参考其他语言的设计来说的,比如 C#就有很多语法糖
|
14
phithon 2017-03-28 14:52:24 +08:00
|
15
KIDJourney 2017-03-28 17:36:30 +08:00
|