【发布时间】:2015-07-31 17:31:31
【问题描述】:
我正在尝试从列表中返回一组重复出现的数字。我想我错过了什么......
list = range(0,10)
K = (1,4)
def f(x):
for k in K:
yield [i for i in x if i <= 1+k or i >= 4+k]
print filter(f, list)
我希望可以为定义设置一个循环。但是输出是[0, 1, 2, 5, 6, 7, 8, 9],显然不是预期的[0,1,2,5,8,9]。
那么如何分离值呢?
【问题讨论】:
-
"但是输出是 [0, 1, 2, 5, 6, 7, 8, 9]"。这是?我不明白。我收到
IndentationError: expected an indented block。你发错代码了吗? -
我确定这只是一个粘贴错误。
-
@Kevin 缩进回车
-
@TigerhawkT3 你是对的,我的错。
-
您正在寻找的答案是
K=4您得到的答案是(K=4 or K=1)。它是K=4和K=1的结果的联合,这与您的预期有何不同?