對於pandasql包的sqldf方法,有一個「會話/環境變量」,可能是locals()或globals(),任何人都可以讓我知道它是什麼?任何文檔引用何時應該使用locals(),以及何時應該使用globals()?關於pandasql locals()和globals()方法問題
https://github.com/yhat/pandasql/
這裏是我的代碼,不知道是什麼東西pandansql正在尋找徹底的當地人()?而locals()是指方法select_first_50內的命名空間?
def select_first_50(filename):
students = pandas.read_csv(filename)
students.rename(columns = lambda x: x.replace(' ', '_').lower(), inplace=True)
q = "select major, gender from studentstable limit 50"
#Execute your SQL command against the pandas frame
results = pandasql.sqldf(q.lower(), locals())
return results
很好的答案。我已經在我原來的帖子中發佈了我的代碼,並且想知道pandansql在我的情況下尋找徹底的本地化()的什麼東西?而locals()是指方法select_first_50內的命名空間? –
在你的代碼中,它工作?應該不是sql裏面的表的名字是'students'?在'locals()'裏面尋找'students'表。 –
所以locals()是指select_first_50的函數範圍?順便說一句,它適用於我。 –