Python 3.x UnboundLocalError:局部变量';最大结果';分配前参考
发布的代码不是您运行的代码,因为未定义Python 3.x UnboundLocalError:局部变量';最大结果';分配前参考,python-3.x,Python 3.x,发布的代码不是您运行的代码,因为未定义搜索结果,执行将停止。根据您发布的内容,我猜想执行len(statuses)>max_results时没有定义max_results。在原始代码中,循环必须在函数定义中。只有在函数中的名称(由于它是赋值目标而被定义为本地名称)在任何赋值之前使用时,才会出现错误消息。例如: for _ in range(10): try: next_results = search_results['search_metadata']['next_r
搜索结果
,执行将停止。根据您发布的内容,我猜想执行len(statuses)>max_results
时没有定义max_results
。在原始代码中,循环必须在函数定义中。只有在函数中的名称(由于它是赋值目标而被定义为本地名称)在任何赋值之前使用时,才会出现错误消息。例如:
for _ in range(10):
try:
next_results = search_results['search_metadata']['next_results']
except KeyError or e:
break
kwargs = dict([ kv.split('=')
for kv in next_results[1:].split("&") ])
search_results = twitter_api.search.tweets(**kwargs)
statuses += search_results['statuses']
if len(statuses) > max_results:
break
q = "CrossFit"
results = twitter_search(twitter_api, q, max_results=10)
print (json.dumps(statuses[0], indent=1))
>>def():
如果为True:返回y
其他:y=1
>>>f()
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
f()
文件“”,第2行,在f中
如果为True:返回y
UnboundLocalError:赋值前引用了局部变量“y”
请阅读此SO帮助页面并采取行动。您发布的内容既不完整又过于完整(if语句之后的所有内容都是多余的)。请提供更多上下文,完整堆栈跟踪?完整代码?问题是什么?
>>> def f():
if True: return y
else: y = 1
>>> f()
Traceback (most recent call last):
File "<pyshell#11>", line 1, in <module>
f()
File "<pyshell#10>", line 2, in f
if True: return y
UnboundLocalError: local variable 'y' referenced before assignment