推荐学习书目
› Learn Python the Hard Way
Python Sites
› PyPI - Python Package Index
› http://diveintopython.org/toc/index.html
› Pocoo
值得关注的项目
› PyPy
› Celery
› Jinja2
› Read the Docs
› gevent
› pyenv
› virtualenv
› Stackless Python
› Beautiful Soup
› 结巴中文分词
› Green Unicorn
› Sentry
› Shovel
› Pyflakes
› pytest
Python 编程
› pep8 Checker
Styles
› PEP 8
› Google Python Style Guide
› Code Style from The Hitchhiker's Guide
sky2017
V2EX  ›  Python

新手请教下这段代码里的用法

  •  
  •   sky2017 · Jan 29, 2019 · 3195 views
    This topic created in 2802 days ago, the information mentioned may be changed or developed.

    最近在看 backtrader,看文档发现有个类定义:

    class DummyInd(bt.Indicator):
        lines = ('dummyline',)
    
        params = (('value', 5),)
    
        def __init__(self):
            self.lines.dummyline = bt.Max(0.0, self.params.value)
    

    请问下 self.lines.dummyline 和 self.params.value 是怎么直接可以用元祖里定义的值的?新手不懂

    3 replies  •  2019-01-29 16:02:02 +08:00
    morefreeze
        1
    morefreeze  
       Jan 29, 2019
    猜测是 bt.Indicator 这个 MetaClass 搞的
    whoami9894
        2
    whoami9894  
       Jan 29, 2019 via Android
    元类的 new 里修改类属性了
    sky2017
        3
    sky2017  
    OP
       Jan 29, 2019
    谢谢楼上两位,在父类的父类里发现了个 metaclass,原来是它在搞鬼
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2381 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 06:01 · PVG 14:01 · LAX 23:01 · JFK 02:01
    ♥ Do have faith in what you're doing.