リストが空であるかどうかをテストしていました。通常はlen(list)== 0を使用しています。リストが空であるかどうかをテストする正しい方法は、TrueかFalseかを少し前から読んでいたことをぼんやりと覚えていました。ブール値をPythonでテストする
私はlistを試してみましたが、Falseで、Falseが返されました。多分私は==を使用していると思いますか? いいえ、それもfalseを返しました。 listはTrue、falseはlist == Trueと同様に返されます。
私は簡単にGoogleをして、で終わるので、今、私は混乱している:Best way to check if a list is empty
トップの答えは次のとおりです。
if not a:
print "List is empty"
だから私はいくつかのより多くの周りを検索し、Pythonのマニュアルに終わりますwhere 4.1:
すべてのオブジェクトは、真偽値、if条件またはwhile条件、または以下のブール演算のオペランドとして使用するためにテストできます。次の値はfalseとみなされます。
空のシーケンス(たとえば、 '、()、[])。
今私は単純に混乱しています。私がリストをリストとしてテストすると、うまく動作します。しかし、空のリストが偽である場合、リストがFalseの場合、またはリスト== Falseの場合はどうしてできませんか?
おかげ
具体的には、[__nonzero__](http://docs.python.org/reference/datamodel.html#object.%5F%5Fnonzero%5F%5F)メソッドが呼び出されています – ernie