Joachim Durchholz
unread,May 15, 2014, 4:33:24 PM5/15/14Sign in to reply to author
Sign in to forward
You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to sy...@googlegroups.com
1) One message to the list is enough, it won't be read faster if you
send it thrice within ten minutes. Actually most knowledgeable people on
this list scan their SymPy inbox once per day
Am 15.05.2014 20:15, schrieb Abhishek K Das:
> wrote this function for FiniteSet
>
> def as_dict(self,*args):
> """
> Rewrite a FiniteSet as a Dictionary.
>
> Examples
> ========
> >>> from sympy import Symbol
> >>> from sympy.core import sets
> >>> A = FiniteSet((0, 0), (0, 2), (2, 0), (2, 2))
> >>> x = Symbol('x')
> >>> y = Symbol('y')
>
> >>> A.as_dict(x,y)
> [{x: 0, y:0}, {x: 0, y:2}, {x:2, y:0}, {x:2, y:2}]
> """
> _list = []
> for elem in self:
> _list.append(dict(zip(list(other),list(elem))))
> return _list
>
> but when I do ./bin/doctest core it shows :
>
>
> _______________________________________ sympy.core.sets.FiniteSet.as_dict
> _______________________________________
> File "sympy/core/sets.py", line 1524, in sympy.core.sets.FiniteSet.as_dict
> Failed example:
> A.as_dict(x,y)
> Exception raised:
> Traceback (most recent call last):
> File "/usr/lib/python2.7/doctest.py", line 1315, in __run
> compileflags, 1) in test.globs
> File "<doctest sympy.core.sets.FiniteSet.as_dict[5]>", line 1, in
> <module>
> A.as_dict(x,y)
> File "sympy/core/sets.py", line 1530, in as_dict
> _list.append(dict(zip(list(other),list(elem))))
> NameError: global name 'other' is not defined
>
> ============================= tests finished: 216 passed, 1 failed, in 2.51
> seconds =============================
> DO *NOT* COMMIT!
> ============================================== rst doctests start
> ===============================================
>
>
> This is the first time , I have made some changes in any file in sympy . I
> am a newbie , please tell me what are the issues with the doctest and how
> can I edit this so as
> to get the test passed ?
The bug is in your function. It is referencing the name "other", but it
is neither a parameter nor available as a global Python variable.
The doctest merely triggers the problem.