亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

練習題中這句啥意思,愣是沒看懂,大佬指點下啊,if not flag:

if not flag:


正在回答

1 回答

因為有重合返回false,所以flag的值為假,not flag就為真,所以if not flag就是為了進入這個條件判斷,接下來的操作就是打印重復元素了

0 回復 有任何疑惑可以回復我~
#1

芒果不忙_ 提問者

為真不就是不重合了嘛,不太明白啊,既然不重合了,還判斷下面循環干啥,下面的循環不就是要提出重合的元素嗎?有點懵啊,按照我說的這個邏輯,不合邏輯啊,不是只有判斷重合了,再次提取重合的元素嗎?為啥來個如果不重合,然后再去循環?
2022-03-03 回復 有任何疑惑可以回復我~
#2

小穎April 回復 芒果不忙_ 提問者

不是啊兄弟,就是有重合啊所以not flag為真,才能進入if條件判斷提取重合元素,我大概明白你意思,但是你上面有點想的不對,if not flag不是用來判斷如果不重合的意思,他這句話只是為了保證可以進入if判斷從而提取重復元素,不是用來判斷重不重合的,你想想如果沒有重合元素,flag值為真,not flag為假,就無法進入if條件所以也就不存在提取重復元素。我不知道說清楚沒有,兄弟你再想想
2022-03-04 回復 有任何疑惑可以回復我~
#3

芒果不忙_ 提問者 回復 小穎April

if not flag: for item in s1: 這個是item=([1,2,3,4,5,6,8,10])。。。。這句: if item not in s2: 這個剔除s2不包含在item中的元素,那么這里為啥最后輸出結果沒有10呢? 10在item中,這句是剔除s2不在item中的值則跳出,與item存在的值沒關系 啊應該最后結果應該有10啊?可以10怎么被剔出去的???大哥在點播下我吧
2022-03-04 回復 有任何疑惑可以回復我~
#4

小穎April 回復 芒果不忙_ 提問者

模擬一下程序運行,for item in s1第一輪item值為1,if 1 not in s2,執行continue,執行continue也就是終結這一輪進入下一輪循環,但顯然if不成立,也就不執行continue,程序繼續執行下一行print也就是打印了重合元素,后幾輪執行情況同第一輪,一直到s1的最后一個元素10才不一樣,10并不在s2中if條件滿足,這輪循環中后續語句不再執行,所以print不會執行也就沒有輸出??梢栽倩仡櫼幌耭or和continue的東西,continue跳出的是本次循環所以是針對for并非針對if。還有一個小tip,可以借助pycharm斷點一步步看程序運行,加油!
2022-03-05 回復 有任何疑惑可以回復我~
#5

芒果不忙_ 提問者 回復 小穎April

你講我明白了,謝謝大佬,厲害啊
2022-03-05 回復 有任何疑惑可以回復我~
#6

嘿呀2021 回復 芒果不忙_ 提問者

if item not in s2 判斷的是item在不在s2中,10不在s2中,所以continue回到循環,接下一個,直到item 出現在S2中,則輸出,所以最后輸出的就是重合的元素
2022-11-13 回復 有任何疑惑可以回復我~
#7

weixin_慕函數3435348

s1 = set([1, 2, 3, 4, 5]) s2 = set([1, 2, 3, 4, 5, 6, 7, 8, 9]) for a in s1: if a in s2: print(a) 這樣是否可以。
2023-02-06 回復 有任何疑惑可以回復我~
#8

幕布斯0457629 回復 芒果不忙_ 提問者

人家問的就是打印重復的啊,所以答案沒10啊
2024-11-19 回復 有任何疑惑可以回復我~
查看2條回復

舉報

0/150
提交
取消

練習題中這句啥意思,愣是沒看懂,大佬指點下啊,if not flag:

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號