IndexError:Flask应用程序中索引0超出了轴0的范围且大小为0

时间:2019-06-14 19:07:50

标签: python pandas flask

我正在使用Virtualenv,Pandas和Python 3.7开发Flask应用程序。

我使用virtualenv和Python 3.7编写了我的主要代码(只需进行一些电气计算)。一切都很好。

然后,我使用此代码创建一个简单的Flask网络应用,然后开始出现一些错误,例如:

  1. AttributeError:只能将.str访问器与字符串值一起使用(即inferred_type是“ string”,“ unicode”或“ mixed”)

对于这一行代码:

num_ac = df_quadro_cargas.index.str.contains('ar_condicionado').sum()
  1. IndexError:索引0超出了大小为0的轴0的范围

此行代码:

demanda = df[df.numero_aparelhos == num].fator_demanda.get_values()[0]

我对第一个解决了问题,但是由于这样做,第二个出现了。恐怕我需要为此重写几行代码。

我的问题是:为什么Flask应用程序即使在使用环境的情况下也能给我另一个答案?

有人遇到那种错误吗?

对于第一个错误,我将代码更改如下:

name_tues = list(df_quadro_cargas.loc[df_quadro_cargas['tipo'] == 'tue'].index)
    # print(name_tues)
    num_ac = 0
    for tue in name_tues:
        if 'ar_condicionado' in tue:
            num_ac += 1

对于第二个错误,请在输出中查找:

df[df.numero_aparelhos == num].fator_demanda.get_values()

我得到了以下数组:

demanda = [1.]

在get_values()之后使用[0]似乎是正确的。

有猜到吗?

1 个答案:

答案 0 :(得分:0)

我发现变量没有正确地传递给函数,因此检测到了奇怪的行为。

  1. 第一个错误,数据框为空。
  2. 第二个错误,我只是强调该函数接受的变量的类型。

就是这样。 谢谢! ;)