用于循环一定次数

问题描述 投票:0回答:1

我正在尝试创建一个辅助函数,该函数将从先前函数中获取“数据”,并将其添加到字典中。但是我一次只能选择10个有麻烦:

def creating_only_10(data, only10):
    for row in data:
        yearr = row[-1]
        if yearr not in only10:
            only10[yearr] = []
        only10[yearr].append([row[0],row[1],row[2],row[3]])
    return(only10)

现在,该函数获取所有数据并将其放入字典中,例如:

{'2000':[1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12], ...}

但是,我很难找到一种方法,使其在[10]处停止,然后在[20]处继续,任何建议或提示都将不胜感激!

我正在尝试实现的输出:

{'2000': [1],[2],[3],[4],[5],[6],[7],[8],[9],[10],
 '2001': [1],[2],[3],[4],[5],[6],[7],[8],[9],[10]}
python-3.x
1个回答
0
投票

假设年份包含年份列表:

only10 = {}
for year in years:
    tempList = []
    for row in range(10):
    # range(10) = 0 to 9
        tempList.append([row+1]) 

    only10[year] = tempList

请注意,您需要将列表(tempList)作为容器,因此输出如下所示:{'2000':[[1],[2],[3],[4],[5],[6],[7],[8],[9],[10]],“ 2001” :[[1],[2],[3],[4],[5],[6],[7],[8],[9],[10]],“ 2002”:[[1 ],[2],[3],[4],[5],[6],[7],[8],[9],[10]]}不喜欢:{'2000':[1],[2],[3],[4],[5],[6],[7],[8],[9],[10],'2001':[1],[2],[3],[4],[5],[6],[7],[8],[9],[10]}(根本不可能)我仍然强烈认为这不是最好的方法,但是我需要更多的上下文来确认这一点并提出建议。

© www.soinside.com 2019 - 2024. All rights reserved.