修改bug-NameError:name ‘df’ is not defined
·
记录一个莫名改好的bug:
运行位置:jupyter的虚拟环境内核python文件
报错文件的功能:读取excel加入到某sql数据表中
报错原因:df = pd.read_excel(文件位置,部分列),该函数可以读取excel并形成dataframe类型,赋给df,但后面报错df没有定义好。
报错信息:

补充:配置jupyter后第一次运行该代码文件前,需要先在数据库新建对应的database和table再运行该代码。
首先,检查前面import中的所有库是否安装,包括os、re、datetime、dateutil等。
其次,检查文件位置、文件是否已经关闭。
都检查后,还是报一样的错误。
最后在加代码测试的时候,需要安装openpyxl库来运行测试代码
测试代码:
"""以下为测试
excel_file = pd.ExcelFile(excel_file_path)
# 获取所有工作表名称
sheet_names = excel_file.sheet_names
# 打印工作表名
print("工作表名称:", sheet_names)"""
在安装openpyxl后,运行包括该测试代码的文件,不再报错。注释掉该段测试代码,亦不在报错。猜测是因为安装了openpyxl才恢复正常,虽然该库在import中没有引入。但是用pip uninstall 该库后,发现注释掉该段测试代码的源代码仍然运行正常,不再报错。
不懂为啥,但是通过安装openpyxl库恢复了该dataframe is not defined 错误。某种代码玄学。
谨此记录。
更多推荐
所有评论(0)