You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

导入fbprophet触发TypeError且所有Python命令均报错的问题求助

导入fbprophet触发TypeError且所有Python命令均报错的问题求助

大家好,我刚第一次配置Spyder,现在遇到了一个棘手的问题——不管运行什么Python命令(哪怕是最简单的python -V)都会触发相同的错误,就连我写的Prophet预测脚本也跑不起来,想请大家帮忙看看问题出在哪。

我的环境信息

  • conda/miniconda3 版本:24.5.0
  • spyder-kernels 版本:3.0.2
  • Python 版本:3.12.8(conda命令行里查询的版本也是这个)
  • fbprophet 版本:0.7.1(目前能安装的最新版)
  • 我的conda环境路径:D:\Spyder6.0.3\envs\my-env-test

Spyder的配置情况

  1. PYTHONPATH设置:我已经把项目根目录和conda环境的Lib/site-packages路径添加到了PYTHONPATH中
  2. Python解释器设置:选择的是当前conda环境下的python.exe可执行文件路径

我运行的测试脚本

import pandas as pd
import matplotlib.pyplot as plt
from fbprophet import Prophet

df = pd.read_csv('data/dau.csv', parse_dates=['Date'], index_col='Date')

df_prophet = df.reset_index().rename(columns={'Date': 'ds', 'New Users': 'y'})

model = Prophet()
model.fit(df_prophet)

future = model.make_future_dataframe(periods=10)

forecast = model.predict(future)

model.plot(forecast)
plt.show()

控制台输出的完整报错信息

%runfile D:/_SpyderAnalysis/New_User.py --wdir
Unexpected exception formatting exception. Falling back to standard exception
Traceback (most recent call last):
  File "D:\Spyder6.0.3\envs\my-env-test\lib\site-packages\spyder_kernels\customize\code_runner.py", line 506, in _exec_code
    exec_encapsulate_locals(
  File "D:\Spyder6.0.3\envs\my-env-test\lib\site-packages\spyder_kernels\customize\utils.py", line 209, in exec_encapsulate_locals
    exec_fun(compile(code_ast, filename, "exec"), globals, None)
  File "d:\_spyderanalysis\new_user.py", line 3, in <module>
    from fbprophet import Prophet
  File "D:\Spyder6.0.3\envs\my-env-test\lib\site-packages\fbprophet\__init__.py", line 8, in <module>
    from fbprophet.forecaster import Prophet
  File "D:\Spyder6.0.3\envs\my-env-test\lib\site-packages\fbprophet\forecaster.py", line 17, in <module>
    from fbprophet.make_holidays import get_holiday_names, make_holidays_df
  File "D:\Spyder6.0.3\envs\my-env-test\lib\site-packages\fbprophet\make_holidays.py", line 14, in <module>
    import fbprophet.hdays as hdays_part2
  File "D:\Spyder6.0.3\envs\my-env-test\lib\site-packages\fbprophet\hdays.py", line 17, in <module>
    from holidays import WEEKEND, HolidayBase, Turkey
  File "D:\Spyder6.0.3\envs\my-env-test\lib\site-packages\holidays\__init__.py", line 22, in <module>
    from holidays.holiday_base import *
  File "D:\Spyder6.0.3\envs\my-env-test\lib\site-packages\holidays\holiday_base.py", line 45, in <module>
    CategoryArg = Union[str, Iterable[str]]
TypeError: 'ABCMeta' object is not subscriptable

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "D:\Spyder6.0.3\envs\my-env-test\lib\site-packages\IPython\core\interactiveshell.py", line 2105, in showtraceback
    stb = self.InteractiveTB.structured_traceback(
  File "D:\Spyder6.0.3\envs\my-env-test\lib\site-packages\IPython\core\ultratb.py", line 1396, in structured_traceback
    return FormattedTB.structured_traceback(
  File "D:\Spyder6.0.3\envs\my-env-test\lib\site-packages\IPython\core\ultratb.py", line 1287, in structured_traceback
    return VerboseTB.structured_traceback(
  File "D:\Spyder6.0.3\envs\my-env-test\lib\site-packages\IPython\core\ultratb.py", line 1140, in structured_traceback
    formatted_exception = self.format_exception_as_a_whole(etype, evalue, etb, number_of_lines_of_context,
  File "D:\Spyder6.0.3\envs\my-env-test\lib\site-packages\IPython\core\ultratb.py", line 1030, in format_exception_as_a_whole
    self.get_records(etb, number_of_lines_of_context, tb_offset) if etb else []
  File "D:\Spyder6.0.3\envs\my-env-test\lib\site-packages\IPython\core\ultratb.py", line 1081, in get_records
    style = get_style_by_name("default")
  File "D:\Spyder6.0.3\envs\my-env-test\lib\site-packages\spyder_kernels\utils\style.py", line 134, in create_style_class
    class StyleClass(Style):
  File "D:\Spyder6.0.3\envs\my-env-test\lib\site-packages\spyder_kernels\utils\style.py", line 136, in StyleClass
    styles = create_pygments_dict(color_scheme_dict)
  File "D:\Spyder6.0.3\envs\my-env-test\lib\site-packages\spyder_kernels\utils\style.py", line 46, in create_pygments_dict
    fon_c, fon_fw, fon_fs = color_scheme["normal"]
TypeError: string indices must be integers

我仔细排查后觉得,问题应该不是出在我的脚本本身——毕竟所有Python命令都会触发这个错误。我刚接触Spyder,不太懂怎么深入排查这类配置或依赖冲突问题,麻烦各位大佬给点思路,谢谢啦!

备注:内容来源于stack exchange,提问作者noobsee

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.14 08:29:34