[Tutor] recursion depth
spir
denis.spir at gmail.com
Wed Jan 8 23:15:58 CET 2014
On 01/08/2014 10:11 PM, Keith Winston wrote:
> On Wed, Jan 8, 2014 at 3:42 PM, Emile van Sebille <emile at fenx.com> wrote:
>
>>
>> Without seeing your code it's hard to be specific, but it's obvious you'll
>> need to rethink your approach. :)
>
>
>
> Yes, it's clear I need to do the bulk of it without recusion, I haven't
> really thought about how to do that. I may or may not ever get around to
> doing it, since this was primarily an exercise in recursion, for me...
> Thanks for your thoughts.
Funny and useful exercise in recursion: write a func that builds str and repr
expressions of any object, whatever its attributes, inductively. Eg with
obj.__repr__() = Type(attr1, attr2...) # as in code
obj.__str__() = {id1:attr1 id2:attr2...} # nicer
Denis
PS: Don't knwo why it's not builtin, would be very useful for debugging,
testing, any kind of programmer feedback. Guess it has to do with cycles, but
there are ways to do that; and python manages cycles in list expressions:
spir at ospir:~$ python3
Python 3.3.1 (default, Sep 25 2013, 19:29:01)
[GCC 4.7.3] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> l1 = [1]
>>> l2 = [1, l1]
>>> l1.extend([l2,l1])
>>> l1
[1, [1, [...]], [...]]
>>> l2
[1, [1, [...], [...]]]
More information about the Tutor
mailing list