首页 > 解决方案 > 如何使用函数返回的数据

问题描述

所以我有request_client.get_candlestick_data(**params)给我以下输出的功能:

[[1618751220000,"54753.32","54830.56","54740.26","54828.47","107.527",1618751279999,"5891141.79175",1647,"55.116","3019428.02669","0"]]

现在我想利用这些数据并取出我想要的东西。我声明了一个这样的对象,以进一步处理:

 candles = request_client.get_candlestick_data(**params)

但是当我print(candles)这个对象时,我只得到以下内容:

[<binance_f.model.candlestick.Candlestick object at 0x000001E7B9BE5F10>]

所以我想要的是一种从上面获取数据的方法,这样我就可以过滤掉我需要的信息。

函数源代码:

def get_candlestick_data(self, symbol: 'str', interval: 'CandlestickInterval', 
                        startTime: 'long' = None, endTime: 'long' = None, limit: 'int' = None) -> any:

    response = call_sync(self.request_impl.get_candlestick_data(symbol, interval, startTime, endTime, limit))
    self.refresh_limits(response[1])
    return response[0]

类的源代码:烛台类:

def __init__(self):
    self.openTime = 0
    self.open = 0.0
    self.high = 0.0
    self.low = 0.0
    self.close = 0.0
    self.volume = 0.0
    self.closeTime = 0
    self.quoteAssetVolume = 0.0
    self.numTrades = 0
    self.takerBuyBaseAssetVolume = 0.0
    self.takerBuyQuoteAssetVolume = 0.0
    self.ignore = 0.0

@staticmethod
def json_parse(json_data):
    result = Candlestick()
    val = json_data.convert_2_list()
    result.openTime = val[0]
    result.open = val[1]
    result.high = val[2]
    result.low = val[3]
    result.close = val[4]
    result.volume = val[5]
    result.closeTime = val[6]
    result.quoteAssetVolume = val[7]
    result.numTrades = val[8]
    result.takerBuyBaseAssetVolume = val[9]
    result.takerBuyQuoteAssetVolume = val[10]
    result.ignore = val[11]

    return result

我很感激任何想法!非常感谢!

标签: pythonjsondataframeparsingbinance

解决方案


推荐阅读