基于列中的列表对值进行排序

2024-10-06 12:33:38 发布

您现在位置:Python中文网/ 问答频道 /正文

我有下列词典

quotes = [
        {
            Quote.FIELD_PX_ASK: [6.296, 6.297, 6.298],
            Quote.FIELD_QTY_ASK: [1250, 3859, 5243],
            Quote.FIELD_PX_BID: [6.295, 6.293, 6.292],
            Quote.FIELD_QTY_BID: [5873, 8166, 5873],
            Quote.FIELD_ISIN: 'ES0140609019',
            Quote.FIELD_MIC: 'XLON',
            Quote.FIELD_TICKER: 'ticker1',
            Quote.FIELD_EPOCH: 1519311601000000,
            Quote.FIELD_SESSION : '2018-02-22',
            Quote.FIELD_SEQUENCE: 1
        },
        {
            Quote.FIELD_PX_ASK: [6.2965, 6.297, 6.298],
            Quote.FIELD_QTY_ASK: [1000, 3859, 5243],
            Quote.FIELD_PX_BID: [6.294, 6.293, 6.292],
            Quote.FIELD_QTY_BID: [5873, 8166, 5873],
            Quote.FIELD_ISIN: 'ES0140609019',
            Quote.FIELD_MIC: 'XLON',
            Quote.FIELD_TICKER: 'ticker2',
            Quote.FIELD_EPOCH: 1519311601200000,
            Quote.FIELD_SESSION : '2018-02-22',
            Quote.FIELD_SEQUENCE: 1
        }
    ]

如您所见,我有4列(FIELD\u PX\u ASK,FIELD\u QTY\u ASK,FIELD\u PX\u BID,FIELD\u QTY\u BID),其中的值是一个列表

我必须得到一个综合'报价'书,因为他们'或多或少'在同一个时代

为了进行合并,我必须根据(FIELD\u PX\u ASK,FIELD\u QTY\u ASK,FIELD\u PX\u BID,FIELD\u QTY\u BID)字段将两本书“合并”在一起

字段\u PX \u ASK应该从低到高,而字段\u PX \u BID应该从高到低

合并的一个例子应该是这样的

    FIELD_ASK 
       1º DICT   2º DICT     1ºDICT    2ºDICT     1ºDICT    2ºDICT
0   [6.296   ,  6.2965  ,   6.297  ,  6.297  ,    6.298   ,   6.298]

根据书的不同,每个请求的数量应该是相应的

正如你所看到的,这本新书是对这两本书的合并,价格来自第一本和第二本

你知道怎么做吗


Tags: fieldsessiondictquoteasktickerqtysequence