[英]No such file or directory error when running program in anaconda prompt
我一直在制作一个简单的 python 脚本来练习读取和写入 excel 文件。 我有几个简单的函数可以从 excel 文件创建一个数据框,允许用户创建一个新行(即更新的储蓄余额等),然后在底部添加新行的数据框并将其保存回 excel。
基本上每个函数都以: dfTest = pd.read_excel('FinancesExcel.xlsx', sheet_name='Test')
并写入:
dfTestNew = dfTest.append(new_row,ignore_index=True)
with pd.ExcelWriter('FinancesExcel.xlsx') as writer:
dfTestNew.to_excel(writer, sheet_name='Test',index=False)
当我在 Spyder 中运行它时,它工作得很好。 更新和保存没有问题,在退出之前可以多次更新。
当我尝试在 Anaconda Prompt 中运行它时,它会加载主菜单...
i = 0
while i != 1:
print("Main Menu")
selection = input('1 - Quick Update\n'
'2 - Full Update\n'
'3 - Overview\n'
'4 - Visualize\n'
'5 - Forecast\n'
'Selection: ')
目前只构建了选项 1-3,但它们都以: dfTest = pd.read_excel('FinancesExcel.xlsx', sheet_name='Test')
如果您选择选项 1-3 中的任何一个,它会产生...
回溯(最近一次调用最后一次):
File "D:\Python\Projects\PersonalFinance\PersonalFinanceTest.py", line 273, in <module>
dfTest = pd.read_excel('FinancesExcel.xlsx', sheet_name='Test')
File "D:\michaData\lib\site-packages\pandas\io\excel\_base.py", line 304, in read_excel
io = ExcelFile(io, engine=engine)
File "D:\michaData\lib\site-packages\pandas\io\excel\_base.py", line 824, in __init__
self._reader = self._engines[engine](self._io)
File "D:\michaData\lib\site-packages\pandas\io\excel\_xlrd.py", line 21, in __init__
super().__init__(filepath_or_buffer)
File "D:\michaData\lib\site-packages\pandas\io\excel\_base.py", line 353, in __init__
self.book = self.load_workbook(filepath_or_buffer)
File "D:\michaData\lib\site-packages\pandas\io\excel\_xlrd.py", line 36, in load_workbook
return open_workbook(filepath_or_buffer)
File "D:\michaData\lib\site-packages\xlrd\__init__.py", line 111, in open_workbook
with open(filename, "rb") as f:
FileNotFoundError: [Errno 2] No such file or directory: 'FinancesExcel.xlsx'
FinancesExcel.xlsx is definitely there, where it always is when it runs in Spyder. I don't have the file open when I run the script (already learned that lesson).
我无法弄清楚为什么它不会运行。
在 Anaconda Prompt 中运行脚本时检查当前工作目录:
import os
print(f'your current wd is: {os.getcwd()}')
我相信它与您从 Spyder 运行的不同。 您需要提供 Excel 文件的完整路径。 “路径/到/excel/FinancesExcel.xlsx”
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.