【问题标题】:Python code works outside function, but doesn't work inside functionPython代码在函数外工作,但在函数内不起作用
【发布时间】:2014-09-12 21:02:55
【问题描述】:

我正在处理一些数据,只需按顺序编写行就可以正常工作并给我想要的结果(从数据框“餐厅”的日期中提取一行数据):

orders = restaurant[(restaurant.index == date)]

但是,当我将它放入一个函数中时,它不再能够按日期查找它,而是只给了我一个空白数据框:

def datesearch(date)   
    orders = restaurant[(restaurant.index == date)]
    return orders

我似乎无法弄清楚为什么它在函数之外很好,但由于某种原因,当我将它放入函数时它无法按日期搜索。

【问题讨论】:

  • 您是否将日期传递给函数?
  • 非常抱歉,这是什么意思?我需要先将 date = date 写入我的函数吗?
  • 您将 datesearch 称为 datesearch(date)。您收到错误消息了吗?
  • 不 - 我没有收到错误。相反,我得到一个空白数据框。我的函数似乎无法找到“日期”行。
  • 嗯,好的。您是否正在从函数中获取返回值?换句话说,orders = datesearch(date)?

标签: python pandas dataframe


【解决方案1】:

我认为restaurant 是一个全局变量,所以它可能没有使用正确的数据。试试这个:

def datesearch(date) 
    global restaurant  
    orders = restaurant[(restaurant.index == date)]
    return orders

【讨论】:

  • 我不明白这怎么可能解决问题,因为你只需要在修改它时声明一个全局名称。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-08-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-26
相关资源
最近更新 更多