ぎょえ、シリーズ@python

What’s New なんか訳してるとひっじょーに細かいことを知ることになり…。

まずこれが何いってんのかわからない (What’s New in Python 2.3 より):

For strings *X* and *Y*, “X in Y“ now works if *X* is more than one character long.

2.2 までは一体どうなってたんだ? と思って今 2.7 と 3.4 で試すと、これまた意外なことに気付く:

1 >>> "X" in "XY"
2 True
3 >>> "XY" in "XY"
4 True
5 >>> "" in "XY"
6 True
7 >>> 

うん、どれも正しいんだけどさ…。そうか、空文字は「含まれる」ね…。無論納得出来る振る舞いだけれども、ちょっと注意しないといけないな、と思った。

なお、What’s New の英語の意味は、対応する別の表現が上の方にあるので、正解の意味はわかるです。「in 演算子がサブストリングの検索に使えるようになりました (例えば “ab” in “abc” は True を返します)。」ね。だから言いたいことはこれだけのはず。のでこの英文、何か手が滑ったんだろうなと思う。










2016-02-09 追記:
なんとなく昔のを読み返していて。きっとこれを読んでくれた人が感じたであろう違和感を「自分で」感じるハメに。

え? なんだこれ? 最初の英文が「わからない」ってナニ? 今読んで、何の不思議もない英語なんだけど、どこにひっかかったんだろう? もう思い出せないが、あたしがアホだ、ってことだけはよーくわかった。(今日は猛烈に眠いのに。そしてこの日はきっと先天的に眠いヒトだったに違いない。)