作者johnjohnlin (LYSin8)
看板Python
标题Re: [问题] if 'string' not in i:
时间Sun Aug 25 00:15:07 2013
请爱用 filter
听说比较快 XD
>>> a = ['a','b','c','d','x/']
>>> b = [i for i in a if '/' in i]
>>> print b
['x/']
至於为什麽只跑一半,之前的回文已经讲很清楚了
※ 引述《sean72 (.)》之铭言:
: #Python 3.3
: a = ['a','b','c','d','x/']
: for i in a:
: if '/' not in i:
: a.remove(i)
: print(a)
: 预期输出: ['x/']
: 实际输出: ['b', 'd', 'x/']
: 为什麽 b 和 d 两个元素无法被滤掉?
: 虽然可以反向绕路 但还是非常疑惑
: tmp = []
: for i in a:
: if '/' in i:
: tmp.append(i)
: print(tmp)
: 感谢帮忙
--
Time waits for no one.
↑
(。A。)ハァ
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 1.170.142.230
1F:推 qsort:正确来说, 应该是List Comprehensions, not filter. 08/28 14:43
2F:→ qsort:5.1.4. List Comprehensions 08/28 14:44
3F:→ qsort:5.1.3. Functional Programming Tools (filter) 08/28 14:45