Python返回args传递给Flask中的另一个函数

时间:2015-07-10 20:37:32

标签: python html flask

我想从一个函数返回一些东西并将其传递给另一个函数,例如

def cur_weather():
  cloud = #this value is scraped from website
  temp = #this value is scraped from website
  return temp, cloud

@app.route('/')
def index(temp, cloud):
  temp = temp
  cloud = cloud
  return render_template('index.html', temp=temp, cloud=cloud)

我一直得到错误TypeError:index()只需要2个参数(给定0)

我不确定我做错了什么或如何将返回值从一个函数传递到另一个函数

所有帮助将不胜感激 提前致谢

2 个答案:

答案 0 :(得分:4)

错误与将一个函数的结果传递给另一个函数无关,而是与您的路径修饰和index函数的声明不匹配。

写作

@app.route('/')
def index(temp, cloud):
    ...

参数tempcloud必须来自某个地方。您需要将它们作为路径中的路径参数。但我不认为你想要他们。我相信你想要的是

@app.route('/')
def index():
    temp, cloud = cur_weather()
    return render_template('index.html', temp=temp, cloud=cloud)

答案 1 :(得分:2)

我不知道你为什么这样做。
只需在cur_weather()中拨打index()

temp, cloud = cur_weather()

我认为这会更好。