好吧,所以我试图在这里制作一个Facebook机器人为我做一些事情,但我并不认为这对你很重要。
无论如何,为了实现我想做的事情,我需要做一些事情。因此,使用Facebook API我会收到一些帖子ID,其中包含以下代码:
for posts in parsed_json:
post_id = posts.get('id')
post_url = "http://facebook.com/" + str(post_id)
text_save(post_url)
但问题是这段代码让我获得了最后25个帖子ID,我只需要最后一个。 因此,我试图做的是:获取最后一个帖子ID,然后用它执行text_save()函数。
但是这个循环让我得到了25个ID,而我并不需要它们。我只需要第一个。
那么如何限制for循环只运行一次?我尝试了以下的事情:
a = 0
while a < 1:
for posts in parsed_json:
post_id = posts.get('id')
post_url = "http://facebook.com/" + str(post_id)
text_save(post_url)
a = a + 1
但这并没有真正成功,它仍然经历了25次。任何想法?
答案 0 :(得分:3)
要获取最后一个值(或第一个),只需使用"http://facebook.com/" + str(parsed_json[-1].get('id'))
(或parsed_json [0])
如果你想使用循环, 只保存最后一个值,然后迭代并运行命令:
post_url = ''
for posts in parsed_json:
post_id = posts.get('id')
post_url = "http://facebook.com/" + str(post_id)
text_save(post_url)
在使用一次交互后断开循环:
a = 0
for posts in parsed_json:
if a >= 1: break
post_id = posts.get('id')
post_url = "http://facebook.com/" + str(post_id)
text_save(post_url)
a += 1
答案 1 :(得分:0)
如果你只需要一次迭代,那么这里基本上不需要循环。
但考虑到您需要测试某些功能,break
语句可以终止循环。
a = 0
while a < 1:
for posts in parsed_json:
post_id = posts.get('id')
post_url = "http://facebook.com/" + str(post_id)
text_save(post_url)
a = a + 1
break
break