Take this code:
>>> import urlparse
>>> parts = urlparse.urlparse('http://docs.python.org/library/')
>>> parts = parts._replace(path='/3.0'+parts.path)
parts._replace works
but as it is an underscored method, it's supposed to be internal, and not used. Is there an alternative? I don't want to do:
>>> parts = parts[:2] + ('/3.0'+parts.path,) + parts[3:]
Because that makes it an ordinary tuple, and not a namedtuple, and doing:
>>> parts = namedtuple(scheme=parts.scheme, netloc=parts.netloc, etc etc)
is kinda stupid. :)
Ideas?
The reason methods of namedtuple
start with an initial underscore is only to prevent name collisions. They should not be considered to be for internal use only:
To prevent conflicts with field names, the method and attribute names start with an underscore.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With