这是我的代码。我试图遍历一堆subreddit标题,并将它们全部放在单独的带标签的文本文件中。如果您能帮助我找到一个很好的解决方案。
for entries in subreddit.top(limit=20):
print (entries.title)
counter = 0
with open("file_" + str(counter) + ".txt", 'w', encoding='utf-8') as f:
f.write(str(entries.title))
counter += 1
if counter == 20:
break
答案 0 :(得分:3)
因为您要在循环中设置counter = 0
,所以要创建多次具有相同名称的文件。
因此将counter = 0
放在for
循环之外。
使用enumerate
的更好的方法可以产生索引和元素,您只需在循环中解包即可获得一个从0开始的非越野车计数器,正是您所需要的:
for counter,entries in enumerate(subreddit.top(limit=20)):
print (entries.title)
with open("file_" + str(counter) + ".txt", 'w', encoding='utf-8') as f:
f.write(str(entries.title))