第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

按多列排序時(shí),為每列設(shè)置升序降序

按多列排序時(shí),為每列設(shè)置升序降序

慕哥6287543 2021-04-11 13:18:59
我有一個(gè)d要排序的列表。我首先按第一列進(jìn)行排序。如果那是平局,那么我繼續(xù)使用第二列進(jìn)行排序。假設(shè)我想按升序按第一列排序,但按降序按第二列排序。升為默認(rèn)值,使用該reverse鍵,我認(rèn)為以下內(nèi)容應(yīng)能工作。sorted(d,key=lambda x: (x[0],x[1]),reverse=(False,True))但事實(shí)并非如此。它給出以下錯(cuò)誤。    reverse=(False,True))TypeError: an integer is required (got type tuple)因此,如果我沒(méi)有正確執(zhí)行操作,該如何解決?還是這樣做的方式完全不同?對(duì)此的建議將有所幫助。我的問(wèn)題確實(shí)存在重復(fù),但是已經(jīng)有有趣的回答,因此我想保留它。
查看完整描述

3 回答

?
慕尼黑8549860

TA貢獻(xiàn)1818條經(jīng)驗(yàn) 獲得超11個(gè)贊

從文檔:


reverse是一個(gè)布爾值。如果設(shè)置為True,則對(duì)列表元素進(jìn)行排序,就好像每個(gè)比較都被反轉(zhuǎn)一樣。


因此,您想要的是類似以下內(nèi)容的東西:


d.sort(key=lambda x: (x[0], -x[1]))

如果x[1]不是數(shù)字,請(qǐng)嘗試:


d.sort(key=lambda x: x[1], reverse=True)

d.sort(key=lambda x: x[0])


查看完整回答
反對(duì) 回復(fù) 2021-04-27
?
手掌心

TA貢獻(xiàn)1942條經(jīng)驗(yàn) 獲得超3個(gè)贊

(可能會(huì)過(guò)大,但是..)使用pandas和args ascending=[True, False]:


d = [[1,2], [2,2], [2,3], [2,4], [3,1]]

df=  pd.DataFrame(d)


sorted_values = df.sort_values(by=[0,1], ascending=[True,False])

sorted_list = sorted_values.agg(list,1).tolist()


[[1, 2], [2, 4], [2, 3], [2, 2], [3, 1]]


查看完整回答
反對(duì) 回復(fù) 2021-04-27
?
狐的傳說(shuō)

TA貢獻(xiàn)1804條經(jīng)驗(yàn) 獲得超3個(gè)贊

我的解決方案:


from itertools import groupby, chain


l = ((1, 'b'),

     (1, 'd'),

     (2, 'a'),

     (1, 'a'))


def sort_multi(lst, index_normal, index_reversed):

    return list(chain.from_iterable([sorted(list(j), key=lambda v:v[index_reversed], reverse=True) for i, j in groupby(sorted(lst), key=lambda v:v[index_normal])]))



print(sort_multi(l, 0, 1))

輸出:


[(1, 'd'), (1, 'b'), (1, 'a'), (2, 'a')]


查看完整回答
反對(duì) 回復(fù) 2021-04-27
  • 3 回答
  • 0 關(guān)注
  • 236 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)