作者: 機械伯爵 | |
日時: 2006/4/1(15:53) |
Fe2+ writes: > > %をオーバーロードすることの是非はおいとくとして、formatのような > > メソッドを設けなかったのは何か理由があるのでしょうか? > > ひと昔前まで文字列にはメソッドがなかったから、だと思います。 > string モジュールの関数をいちいち呼ぶのはフォーマットのような良く使う > 機能に対して煩雑に過ぎる、という判断だったのではないでしょうか。 無いモノは自作自作☆ >>> class FormatableString(str): ... def format(self, fmt): ... return self % fmt ... >>> s = FormatableString("%s %s!") >>> s.format(("Hello","world")) 'Welcome to Wizardry world!!' >>> あれ? /機械伯爵/