Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Pygal图表库-令人沮丧的can';我甚至不能定义一个函数_Python_Python 2.7_Pygal - Fatal编程技术网

Python Pygal图表库-令人沮丧的can';我甚至不能定义一个函数

Python Pygal图表库-令人沮丧的can';我甚至不能定义一个函数,python,python-2.7,pygal,Python,Python 2.7,Pygal,耶稣基督蟒蛇是我见过的最神秘的** 由于某些原因,我甚至不能向这个类添加函数(包括在项目中,而不是库的一部分)。Pygal使用某种类型的“鬼”类来完成“把我搞砸” 考虑以下只能通过黑魔法实例化的Line类,即:pygal.Line(Config) 看起来很直截了当 这是一些格洛斯特类 REAL_CHARTS = {} for NAME in CHARTS_NAMES: mod_name = 'pygal.graph.%s' % NAME.lower() __import__(mo

耶稣基督蟒蛇是我见过的最神秘的**

由于某些原因,我甚至不能向这个类添加函数(包括在项目中,而不是库的一部分)。Pygal使用某种类型的“鬼”类来完成“把我搞砸”

考虑以下只能通过黑魔法实例化的Line类,即:pygal.Line(Config)

看起来很直截了当

这是一些格洛斯特类

REAL_CHARTS = {}
for NAME in CHARTS_NAMES:
    mod_name = 'pygal.graph.%s' % NAME.lower()
    __import__(mod_name)
    mod = sys.modules[mod_name]
    REAL_CHARTS[NAME] = getattr(mod, NAME)


class Ghost(object):

    def __init__(self, config=None, **kwargs):
        """Init config"""
        name = self.__class__.__name__
        self.cls = REAL_CHARTS[name]
        self.uuid = str(uuid4())
        if config and isinstance(config, type):
            config = config()

        if config:
            config = config.copy()
        else:
            config = Config()

        config(**kwargs)
        self.config = config
        self.raw_series = []
        self.raw_series2 = []
pygal的init

    __version__ = '1.1.0'
import sys
from pygal.config import Config
from pygal.ghost import Ghost
from pygal.graph import CHARTS_NAMES

CHARTS = []
CHARTS_BY_NAME = {}

for NAME in CHARTS_NAMES:
    _CHART = type(NAME, (Ghost,), {})
    CHARTS.append(_CHART)
    CHARTS_BY_NAME[NAME] = _CHART
    setattr(sys.modules[__name__], NAME, _CHART)


__all__ = CHARTS_NAMES + [Config.__name__, 'CHARTS', 'CHARTS_BY_NAME']  # @UndefinedVariable
将函数添加到Line.py文件会显示:

AttributeError:“Line”对象没有属性“set\u extra\u data”

即使其定义与往常一样:

def set_extra_data(self):
    print "--> FML Python"

有人知道这里发生了什么吗

哪里定义了
set\u extra\u data
?因为这个函数是错误发生的地方,所以我认为您必须在它所在的地方发布上下文。
def set_extra_data(self):
    print "--> FML Python"