Pythonのドキュメントによると:
str.endswith(サフィックス[, 開始[, 終了]])
文字列が指定されたサフィックスで終わる場合は True を返し、そうでない場合は False を返します。suffix は、検索するサフィックスのタプルにすることもできます。オプションの開始では、その位置からテストを開始します。オプションの end では、その位置で比較を停止します。
バージョン 2.5 で変更: タプルをサフィックスとして受け入れます。
次のコードは を返すはずですが、Python 2.7.3True
では返されます。False
"hello-".endswith(('.', ',', ':', ';', '-' '?', '!'))
str.endswith()
4 番目のタプル要素を超えるものは無視されるようです。
>>> "hello-".endswith(('.', ',', ':', '-', ';' '?', '!'))
>>> True
>>> "hello;".endswith(('.', ',', ':', '-', ';' '?', '!'))
>>> False
バグを見つけましたか、それとも何か不足していますか?