だから私は次のコードを持っています:
if old_size < new_size and date_exceeded and usage(user) < new_size:
unset_date_exceeded()
問題は、値がそうでないことを示唆している場合でも、これが True と評価されることです。
logger.info('oS:%s | nS:%s | dE:%s | usage:%s' % (old_size, new_size, date_exceeded, usage(user)))
# returns oS:262144000 | nS:536870912 | dE:2013-04-22 10:27:08+00:00 | usage:908811325
usage(user) < new_size である必要がありますFalse
が、何らかの理由でうまくいかないことに注意してください。
関数の仕組みを理解していないのではないかと思いand
ましたが、これを python シェルで試してみると、複製できず、代わりに期待される結果が得られます。
>>> oS= 262144000
>>> nS= 536870912
>>> usage= 908811325
>>> dE="2013-04-22 10:27:08+00:00"
>>> oS < nS and dE and usage < nS
False
気が狂ってタイプミスか何かを見落としていると確信しているので、その場合は申し訳ありませんが、困惑しています。