Traceback (most recent call last): File "D:\hw_stock_2022\ETF 轮动策略加强版\ETF 轮动策略加强版.py", line 196, in <module> df_b_1 = pd.read_csv(path + big_etf + '.csv', encoding='gbk', parse_dates=['交易日期']) # 要和上面下载的日期数据文件位置保持一致 File "C:\Python38\lib\site-packages\pandas\util\_decorators.py", line 211, in wrapper return func(*args, **kwargs) File "C:\Python38\lib\site-packages\pandas\util\_decorators.py", line 331, in wrapper return func(*args, **kwargs) File "C:\Python38\lib\site-packages\pandas\io\parsers\readers.py", line 950, in read_csv return _read(filepath_or_buffer, kwds) File "C:\Python38\lib\site-packages\pandas\io\parsers\readers.py", line 605, in _read parser = TextFileReader(filepath_or_buffer, **kwds) File "C:\Python38\lib\site-packages\pandas\io\parsers\readers.py", line 1442, in __init__ self._engine = self._make_engine(f, self.engine) File "C:\Python38\lib\site-packages\pandas\io\parsers\readers.py", line 1735, in _make_engine self.handles = get_handle( File "C:\Python38\lib\site-packages\pandas\io\common.py", line 856, in get_handle handle = open( FileNotFoundError: [Errno 2] No such file or directory: 'D:\\hw_stock_2022\\data\\ETF_datasz159985.csv'
时间: 2023-02-16 10:34:58 浏览: 181
看起来你的代码在运行时抛出了一个异常。具体的,这个异常是在文件 "D:\hw_stock_2022\ETF 轮动策略加强版\ETF 轮动策略加强版.py" 的第 196 行,在执行 pd.read_csv 函数时发生的。看起来你使用的是 gbk 编码读取 CSV 文件,并且指定了 parse_dates 参数。
这个错误消息中没有提到具体的错误原因,但是你可以尝试调查一下错误发生的原因。可能是文件路径不正确,或者文件编码不正确,或者文件本身有问题。你也可以尝试使用 Python 的内置的异常处理机制来捕获这个错误,以便在程序运行过程中能够更好地处理错误。
相关问题
Traceback (most recent call last): File "D:\hw_stock_2022\ETF 轮动策略加强版\ETF 轮动策略加强版.py", line 129, in <module> k_data = content['data'][0][etf_code] IndexError: list index out of range
这个错误表明在文件 "ETF 轮动策略加强版.py" 的第 129 行,在试图访问列表的某个索引时,该索引超出了列表的范围。这可能是由于试图访问的索引超出了列表的最大索引值或者列表为空导致的。为了解决这个问题,您可以检查代码,确保列表不为空,并且在访问索引之前检查索引是否超出了列表的范围。
sz159999 永赢中证500ETF Traceback (most recent call last): File "D:\hw_stock_2022\ETF 轮动策略加强版\ETF 轮动策略加强版.py", line 105, in <module> k_data = content['data'][ETF_code] TypeError: list indices must be integers or slices, not str
这个错误提示是在第 105 行代码中发生的。它提示在尝试使用一个字符串作为下标来访问列表(list)元素时出现了错误。列表下标(或者称作索引)通常需要是整数或者是切片(slice),而不能是字符串。
举个例子,如果有一个列表 `lst = [1, 2, 3]`,那么可以使用整数下标来访问列表元素,例如 `lst[0]` 就是访问列表第一个元素 1。也可以使用切片来访问列表的一段连续的元素,例如 `lst[0:2]` 就是访问列表中第一个和第二个元素,即 1 和 2。但是不能使用字符串来访问列表元素,例如 `lst['a']` 是不合法的。
如果你遇到了这个错误,那么可能是在第 105 行代码中使用了一个字符串作为列表下标。你可以检查一下代码,看看是否存在这种情况。
阅读全文