如何解决安排运行python函数,但发生错误:发生“分配前已引用本地变量”
我不熟悉Python,所以请多多包涵。
我正在尝试编写一个每30分钟从API请求数据的函数。由于API的限制,我不得不分散我的请求,因此在我使用调度程序的其他问题中。
一些细节:
- 该功能旨在遍历邮政编码列表
- 该函数添加了一个计数,以便为每个新呼叫选择一个新日期进行呼叫
- 我想在每个API调用的末尾创建一个大数据框。
如果我自己运行该函数,它将正常工作。但是,当我尝试将其与调度程序一起使用时,它会出错并显示“分配前已引用本地变量。
功能
count = 0
df = pd.DataFrame(columns =['x','y',z'])
def func():
global count
global df
count += 1
date = date_list[count]
base_url = "url"
api_key = "key"
for j in zip_array:
zip = str(j)
options = {'zipCode':j,'date': date+'T00-0000','format': 'application/json','api_key':api_key}
r = requests.get(base_url,params=options)
new_data = pd.read_json(r.text)
df = df.append(new_data,ignore_index=True)
print("API CALLED")
schedule.every(30).minutes.do(func)
while True:
schedule.run_pending()
time.sleep(1)
老实说,我不知道该函数是否有问题,是否应该使用其他技术来调度它或其他原因。谢谢。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。