用isinstance判定刪除列表中某一類型元素時,出現(xiàn)一個奇怪的問題!
c=[2,5,2,3,3,4,8,'a','b','c','d',1.1]
????for a in c :
????????if ? not isinstance(a,int) and not isinstance(a,float) : ? #判定 不是整型又不是浮點型時,結(jié)果為真,執(zhí)行下面代碼:
????????????c.remove(a)
print(c)
這里運行結(jié)果是:[2,5,2,3,3,4,8,'b','d',1.1] ,'b' 和‘d’刪除不了。
如過把列表改為:c=[2,5,2,3,3,4,8,'a',2,'b',7,'c',.2'd',1.1]
結(jié)果為:[2,5,2,3,3,4,8,2,7,3.2,1.1] ,又沒毛病了!
我這里的問題是:為什么每兩個字符串后面的那一個刪除不了?
2020-11-22
remove函數(shù)只能刪除首個滿足條件的數(shù),不如換種方式
2020-10-19
額。。。。不會是編譯器或者版本問題吧
2020-10-18
大哥 沒問題呀