每次我遍历不同的列表时如何创建一个新列表,为新列表提供一个包含原始列表中的元素的名称?

How to create a new list each time I iterate through a different list, giving the new list a name that contains the element from the original list?

我正在尝试创建一个函数来计算特定的每日 returns(即 1、2、5、10 和 30 天 returns)。我想创建一个具有适当名称(即 one_day_return_list)的不同列表,其中包含给定时间段的 returns。

def calculate_returns(trading_day):

    for i in [1,2,5,10,30]:
        i_day_return = (closing_prices[(trading_day + i)] - closing_prices[(trading_day)]) / closing_prices[(trading_day)
        i_day_return_list.append(i_day_return_return)

在第一次迭代期间,i_day_return 应导致 one_day_return,而 i_day_return_list 应导致 one_day_return_list。有什么线索可以将上面的伪代码变成实际代码吗?

通常,您不会 "name" 您尝试做的系列元素,而是 "number" 它们。这是 dict 的一个很好的用例。像这样:

def calculate_returns(trading_day):
    returns = {}
    for i in (1,2,5,10,30):
        returns[i] = random.random()

    return returns

其结果将是从时间范围到 return 的映射。