On Wednesday 20 July 2016 16:45, Lawrence D’Oliveiro wrote: >>>>> I was trying something like >>>>> >>>>> ctx.dashes = ((0.1, 0.03, 0.03, 0.03), 0) >>>>> >>>>> and wondering why it wasn’t working...
And so are we. Since you've already solved the problem, maybe you could enlighten us? >>>> This makes no sense to me at all. You appear to be trying to create a >>>> tuple, which contains a tuple and an integer. You then say it doesn't >>>> work, but imply that using __slots__ fixes the problem. So please explain >>>> exactly what you were trying to achieve, the exact error you got, with the >>>> complete traceback, and how using __slots__ fixed the problem. >>> >>> No traceback. The lines were simply coming out solid, instead of dashed. >> >> And __slots__ fixed the problem how, exactly? > > The Context attribute that controls the dash settings is called “dash”, not > “dashes”. Ah, finally, an actually *useful* reply. Honestly Lawrence, couldn't you have just said this right at the start, instead of having us drag the answer out of you over multiple email exchanges? If you had said right at the beginning "I have a habit of mistyping attribute names, and using __slots__ ensures I get an immediate error" then we would have understood you. Instead, you waste our time, *and yours*, leading us up the garden path by implying that you fixed a display bug by changing something like: class Context(object): def __init__(self): self.dashes = something to: class Context(object): __slots__ = ("dashes",) def __init__(self): self.dashes = something Perhaps now you understand why you gave us the impression of cargo-cult debugging. -- Steve -- https://mail.python.org/mailman/listinfo/python-list