Problems trying to override __str__ on path class
Mike Krell
no at spam.com
Sun Oct 22 22:33:49 EDT 2006
Peter Otten <__peter__ at web.de> wrote in
news:ehggfk$60i$00$1 at news.t-online.com:
> I get
>
> np: "overridden __str__: c:/mbk/test"
> str(np): "overridden __str__: c:/mbk/test"
> overridden __str__: overridden __str__: c:/mbk/test/appendtest
Hmmm. I guess you're not running under windows, since normpath()
converts / to \ on windows. I wonder if that's part of the problem.
> Are you using the latest version of the path module?
My path.py says it's 2.1, which is the latest according to the site.
Older versions
> implied a Path() call in the __div__() operator which would explain at
> least the output you get for
>
> print np / 'appendtest'
You've lost me here. What do you mean about "implied a Path() call"?
Here is the definition of __div__ from path.py:
'''
# The / operator joins paths.
def __div__(self, rel):
""" fp.__div__(rel) == fp / rel == fp.joinpath(rel)
Join two path components, adding a separator character if
needed.
"""
return self.__class__(os.path.join(self, rel))
'''
I still don't understand the TypeError in the delegation case.
Mike
More information about the Python-list
mailing list