質問

このコードを取ります:

>>> import urlparse
>>> parts = urlparse.urlparse('http://docs.python.org/library/')
>>> parts = parts._replace(path='/3.0'+parts.path)

parts._replace worksが、それは下線方法であるとして、使用される内部、およびでないことになっています。代替はありますか?私はしたくない。

>>> parts = parts[:2] + ('/3.0'+parts.path,) + parts[3:]

それはそれを普通のタプル、およびないnamedtupleを行っているため、とやってます:

>>> parts = namedtuple(scheme=parts.scheme, netloc=parts.netloc, etc etc)

ちょっと愚かです。 :)

アイデア?

役に立ちましたか?

解決

namedtupleの方法は、最初のアンダースコアで始まる理由は、名前の衝突を防ぐためだけです。彼らは、の内部使用のためであることを考えるべきではない。

  

フィールド名との競合を防ぐために、方法および属性名は、アンダースコアで始まります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top