运行boot3获取数据时遇文件不存在错误,求本地CSV存储解决方案
解决Errno 2 No such file or directory: 'utils\expiry_list.csv'问题
这个错误的核心原因是你要写入的utils目录不存在,pandas的to_csv方法不会自动创建不存在的父目录,直接写入就会抛出找不到路径的错误。另外注意:单反斜杠\在Python字符串里是转义字符,建议用正斜杠/或者双反斜杠\\来避免路径解析问题。
解决步骤:
- 先检查并创建
utils目录(如果不存在) - 再执行数据写入操作
修改后的完整代码:
import os # 自动创建utils目录,exist_ok=True确保目录已存在时不报错 os.makedirs('utils', exist_ok=True) # 获取数据 expiries = get_data('options', 'BANKNIFTY', custom="select DISTINCT(expiry) from \"spot_backtesting_data\";") # 用正斜杠写路径,避免转义问题 expiries.to_csv('utils/expiry_list.csv', index=False)
额外说明:
- 如果你的
get_data返回的不是pandas DataFrame,需要先确认它的to_csv方法是否支持路径参数,不过从报错来看大概率是pandas的场景。 - 若需要将数据按日期拆分保存(比如每天一个文件),可以在文件名里加入日期变量,比如:
from datetime import datetime current_date = datetime.now().strftime("%Y%m%d") expiries.to_csv(f'utils/expiry_list_{current_date}.csv', index=False)
内容的提问来源于stack exchange,提问作者Nikhil kumar
相关产品推荐
相关产品推荐

