From fff39a87e815d68d970d5bf6472158e1908eaea1 Mon Sep 17 00:00:00 2001 From: zzj <29055749+zjzh@users.noreply.github.com> Date: Thu, 20 Jan 2022 20:10:22 +0800 Subject: [PATCH] Update data_portal.py refactoring code with var unpack which is more pythonic, concise, readable and efficient --- zipline/data/data_portal.py | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/zipline/data/data_portal.py b/zipline/data/data_portal.py index 5ddf01107b..1c7bf4a680 100644 --- a/zipline/data/data_portal.py +++ b/zipline/data/data_portal.py @@ -1223,17 +1223,15 @@ def get_stock_dividends(self, sid, trading_days): fetchall() dividend_info = [] - for dividend_tuple in dividends: - dividend_info.append({ - "declared_date": dividend_tuple[1], - "ex_date": pd.Timestamp(dividend_tuple[2], unit="s"), - "pay_date": pd.Timestamp(dividend_tuple[3], unit="s"), - "payment_sid": dividend_tuple[4], - "ratio": dividend_tuple[5], - "record_date": pd.Timestamp(dividend_tuple[6], unit="s"), - "sid": dividend_tuple[7] - }) - + for (dividend_tuple_0, dividend_tuple_1, dividend_tuple_2, dividend_tuple_3, + dividend_tuple_4, dividend_tuple_5, dividend_tuple_6, dividend_tuple_7, *dividend_tuple_len) in dividends: + dividend_info.append({'declared_date': dividend_tuple_1, + 'ex_date': pd.Timestamp(dividend_tuple_2, unit='s'), + 'pay_date': pd.Timestamp(dividend_tuple_3, unit='s'), + 'payment_sid': dividend_tuple_4, + 'ratio': dividend_tuple_5, + 'record_date': pd.Timestamp(dividend_tuple_6, unit='s'), + 'sid': dividend_tuple_7}) return dividend_info def contains(self, asset, field):