我试图使一个数据框对象全局,我遇到了麻烦,我不知道为什么。我有这个跨越2个文件:main.py
和helperFunction.py
它归结为helperFunction.py
:
import pandas as pd
def createGlobalVars(file_path):
global my_df
my_df = pd.read_csv(file_path)
print(my_df.head()
main.py
import helperFunction
def main():
helperFunction.createGlobalVars('the_file.csv')
print(my_df.head())
if __name__=='__main__':
main()
辅助功能print正常工作:
data
0 'my data'
1 'my data'
2 'my data'
3 'my data'
4 'my data'
但是主打印给我的是my_df is not defined
这违反了我对全局变量的理解,所以我一定是漏掉了什么。
1条答案
按热度按时间yjghlzjz1#
如果你改变你的全局变量而不是赋值给它,事情会按预期的方式进行:
使用以下
the_file.csv
:运行
python main.py
输出: