在python

时间:2017-09-11 13:21:09

标签: python sql

我是python的新手,我正在尝试返回当地的日期和时间。 像往常一样,编程有不同的方法。 一种方法是获得时区:

now_date = datetime.now(pytz.timezone('Europe/Bucharest'))

这个工作正常。

我喜欢的另一种方法是获取数据库日期。 我发现这有点棘手。我试过这样:

np_server_date = pd.read_sql(sql='SELECT NOW() as data', con=engine)
date_object = np_server_date.ix[0][data]
now_date = data_object

我想我错过了一些东西,因为它会返回错误

"global name "data" it's not defined"

我错过了什么,因为它们是在同一个函数中声明的。这两种获取数据的方式有区别吗? 这是我的完整代码:

def getlocaldata():
    ref_time = dt.time(7,00).strftime('%H:%M:%S')
    aux_time = dt.time(7,0).strftime('%H:%M:%S')
    np_server_date = pd.read_sql(sql='SELECT NOW() as data', con=engine)
    date_object = np_server_date.ix[0][data]
    now_date = data_object

1 个答案:

答案 0 :(得分:1)

您忘记在data附近加上引号。

np_server_date.ix[0]['data']将解决错误。

还有一件事,在此之后的下一行可能会引发错误,因为data_object未定义。重写为date_object