碰到個循環中if判斷的問題(內附代碼)(我腦殘了。。吸取教訓以后遇問題多思考)
沒事了,不好意思~腦殘了 *********** s?=?set(['Adam',?'Lisa',?'Paul']) L?=?['Adam',?'Lisa',?'Bart',?'Paul'] judge=0 for?i?in?L: ????print?i ????for?x?in?s: ????????if?x?==?i: ????????????judge?=?True ????print?judge Adam True Lisa True Bart????????#?。?!返回是True? True Paul True???? 而當我把if?x?==?i:???改成??if?x?==?'Bart'
Adam 0 Lisa 0 Bart 0 Paul 0 結果又正常了,沒搞明白
2015-12-20
當L循環到bart的時候,s中沒有匹配的值,所以judge的值就是上一次循環的值,而上一次循環是Lisa,這時候judge被設置為true,所以當循環到bart的時候也是true,而如果設置為bart,則s中沒有匹配的bart,所以全都是初始值,也就是0