获取嵌套的for循环的索引

时间:2019-07-29 16:12:26

标签: python python-3.x loops for-loop

我有一个Python脚本,用于保存reddit帖子和每个帖子的前40个顶级评论。帖子本身和评论保存在两个不同的词典中。

在post dict中,我将从500开始保存每个帖子的索引值。我也想保存每个帖子的每个评论的索引值。换句话说,每个帖子的每个评论都应具有保存索引值。

在这种情况下,第一篇文章的每个注释的索引值为500。第二篇文章的每个注释的索引值为501。第三篇文章的每个注释的索引值为502。等等

索引值可用于帖子。问题在于评论。现在,帖子1的评论1的索引为500,帖子1的评论2的索引为501,帖子1的评论3的索引为502等。等等。帖子1的所有评论的索引都为500。帖子2的所有评论的索引为501等。等等

index = 500
for submission in top_subreddit:
    index +=1
    topics_dict["title"].append(submission.title)
    topics_dict["score"].append(submission.score)
    topics_dict["id"].append(index)
    topics_dict["url"].append(submission.url)
    topics_dict["created"].append(submission.created)
    topics_dict["body"].append(submission.selftext)

    comments = submission.comments[:40]

    for comment in comments:
        if isinstance(comment, MoreComments):
            continue
        comments_dict["commentid"].append(index)
        comments_dict["commentbody"].append(comment.body)

1 个答案:

答案 0 :(得分:1)

避免为索引号使用外部变量。仅当您对其进行一些操作时才使用它

随便去enumerate


for apples_index, apple in enumerate(apples):
    for mangoes_index, mango in enumerate(mangoes):
        make_juice(apples_index, mangoes_index)