让我猜猜...您正在使用 backtrader,并且在使用它时遇到了这个问题。
您遇到的错误是:
File "/xxx/backtrader/plot/locator.py", line 35, in <module>
from matplotlib.dates import (HOURS_PER_DAY, MIN_PER_HOUR, SEC_PER_MIN,
ImportError: cannot import name 'warnings' from 'matplotlib.dates'
错误的根本原因是在上述文件(locator.py)的第 35 行尝试从 matplotlib.dates 导入“警告”:
from matplotlib.dates import (HOURS_PER_DAY, MIN_PER_HOUR, SEC_PER_MIN,
MONTHS_PER_YEAR, DAYS_PER_WEEK,
SEC_PER_HOUR, SEC_PER_DAY,
num2date, rrulewrapper, YearLocator,
MicrosecondLocator, warnings)
但是如果你查看文档或代码,你会发现matplotlib.dates中没有任何警告。在github上挖掘这个文件历史,可以发现一行:
import warnings
已经removed on 7 sept 2019,这可能是您注意到问题的原因。
在 Backtrader 中,有一个拉取请求正在等待这个问题:
https://github.com/mementum/backtrader/pull/418
如果你分叉了代码,你可以自己将修复应用到代码中,或者等待 PR 被合并