zoukankan      html  css  js  c++  java
  • Hyperopt TypeError: 'generator' object is not subscriptable

    BUG

    最近复用以前的错误代码,结果发现了一个bug,bug如下:

          File "/home/michael/work/oanda/src/oanda/trend_prediction/find_optimal_model.py", line 124, in <module>
            main()
          File "/home/michael/work/oanda/src/oanda/trend_prediction/find_optimal_model.py", line 116, in main
            trials=trials)
          File "/home/michael/work/oanda/runtime/lib/python3.5/site-packages/hyperopt/fmin.py", line 307, in fmin
            return_argmin=return_argmin,
          File "/home/michael/work/oanda/runtime/lib/python3.5/site-packages/hyperopt/base.py", line 635, in fmin
            return_argmin=return_argmin)
          File "/home/michael/work/oanda/runtime/lib/python3.5/site-packages/hyperopt/fmin.py", line 314, in fmin
            pass_expr_memo_ctrl=pass_expr_memo_ctrl)
          File "/home/michael/work/oanda/runtime/lib/python3.5/site-packages/hyperopt/base.py", line 786, in __init__
            pyll.toposort(self.expr)
          File "/home/michael/work/oanda/runtime/lib/python3.5/site-packages/hyperopt/pyll/base.py", line 715, in toposort
            assert order[-1] == expr
        TypeError: 'generator' object is not subscriptable

    原因与解决方案

    思考考虑到之前我更新了类库,所以最先考虑的是类库问题,但是是在找不到是那个类库的问题,查了Hyperopt源码也没什么用.大概僵持了二十分钟,决定还是去Github查查issues.确实找到了解决方案.
    原因与解决底层库networkx更新造成的,Hyperopt不支持networkx-2.0,我换成了1.11版本就OK了.

    pip install networkx==1.11

    blog,没百度到这个错误,所以写了博客,如文章题目使用关键词Hyperopt+TypeError: 'generator' object is not subscriptable可以找到,算是造福一下小白.

  • 相关阅读:
    03014_properties配置文件
    Python 文件I/O
    Python面向对象
    Python CGI编程
    Python正则表达式
    Python使用SMTP发送邮件
    python操作mysql数据库
    Python多线程
    python XML解析
    给傻瓜用的SP2010开发--第一部分--理解SP开发平台--第一章节--理解SP促销讨论(2)--追踪SP源头
  • 原文地址:https://www.cnblogs.com/fonttian/p/8480689.html
Copyright © 2011-2022 走看看