需求:想判斷‘a’ ,‘b’ ,‘c’ 三個字符串都在‘abc’裏在執行下條語句。
下面代碼是錯誤的
if 'a' and 'b' and 'c' in 'abc' :
print 'right'
else :
print 'Error'
正確寫法
if 'a' in 'abcd' and 'b' in 'abcd' and 'c' in 'abc' :
print 'right'
else :
print 'Error'
原因:python中if判斷條件是判斷語句是否爲true,什麼條件爲true?有字符時就爲true(除了bool類型的false)。
按第一種寫法這種情況是判斷不出來的。
if 'xxxxxxxxxxxx' and 'ababababddddddddddd' and 'c' in 'abc' :
print 'right'
else :
print 'Error'
執行結果是:right,因爲只判斷了 ‘c’ in ‘abc’。