在异常出现后继续执行循环
for item in r.get_iterator():
if 'retweeted_status' in item:
print('aa')
else:
id_twitty = item['id']
count_ret = item['retweet_count']
如果 item['id']
出现了 KeyError
错误,程序就会停止运行。
那么,怎么才能让 for
循环在出现错误后继续执行呢?
4 个回答
1
这段代码是用来处理一些特定功能的。它可能涉及到数据的输入、输出或者是一些计算。具体来说,代码块中的内容会根据不同的情况执行不同的操作。
如果你是编程新手,可以把这段代码想象成一个食谱。每一步都有它的目的,最终会帮助你完成一个特定的任务。只要按照步骤来,就能得到想要的结果。
记得在学习代码的时候,慢慢来,逐步理解每一部分的功能,这样才能更好地掌握编程的技巧。
for item in r.get_iterator():
if 'retweeted_status' in item:
print('aa')
else:
id_twitty = item.get('id', None)
count_ret = item.get('retweet_count', None)
if not id_twitty or not count_ret:
print "could not retrieve id or count"
# handle error here
1
你可以先检查一下 item['id']
这个东西是否存在:
for item in r.get_iterator():
if 'retweeted_status' in item:
print('aa')
else:
if 'id' in item:
id_twitty = item['id']
count_ret = item['retweet_count']
如果它不存在,你可以用 None
来代替:
for item in r.get_iterator():
if 'retweeted_status' in item:
print('aa')
else:
id_twitty = item.get('id')
count_ret = item['retweet_count']
或者你也可以用其他的默认值来代替,如果它不存在的话:
default_id = 0
for item in r.get_iterator():
if 'retweeted_status' in item:
print('aa')
else:
id_twitty = item.get('id', default_id)
count_ret = item['retweet_count']
4
除了continue
。
for item in r.get_iterator():
if 'retweeted_status' in item:
print('aa')
elif 'id' not in item:
continue
else:
id_twitty = item['id']
count_ret = item['retweet_count']
5
你可以尝试捕捉到出现的 KeyError
错误,然后把它忽略掉:
for item in r.get_iterator():
if 'retweeted_status' in item:
print('aa')
else:
try:
id_twitty = item['id']
count_ret = item['retweet_count']
except KeyError:
pass