これを機能させるにはいくつかの問題がありました:
# Shortened for brevity
def _coerce_truth(word):
TRUE_VALUES = ('true','1','yes')
FALSE_VALUES = ('false','0','no')
_word = word.lower().strip()
print "t" in _word
if _word in TRUE_VALUES:
return True
elif _word in FALSE_VALUES:
return False
私は発見した:
In [20]: "foo" is "Foo".lower()
Out[20]: False
In [21]: "foo" is "foo".lower()
Out[21]: False
In [22]: "foo" is "foo"
Out[22]: True
In [23]: "foo" is "foo".lower()
Out[23]: False
どうしてこれなの?アイデンティティは平等とは異なることは理解していますが、アイデンティティはいつ形成されますか? ステートメント 22 はFalse
、文字列の静的な性質により、id == eq でなければなりません。この場合、私はステートメント 23 に混乱しています。
事前に説明して感謝します。