【发布时间】:2014-08-26 07:57:13
【问题描述】:
有没有办法在列表推导中添加两个值?
[[x-0.5, x] if x != 0 and x % 30 == 0 else x for x in range(0, 60 + 1, 5)]
我尝试了上面的代码,它返回了
[0, 5, 10, 15, 20, 25, [29.5, 30], 35, 40, 45, 50, 55, [59.5, 60]]
我也试过了
def f(x):
return x-0.5, x
[f(x) if x !=0 and x % 30 == 0 else x for x in range(0, 60 + 1, 5)]
返回
[0, 5, 10, 15, 20, 25, (29.5, 30), 35, 40, 45, 50, 55, (59.5, 60)]
如何去掉括号?
编辑:
这是我所期待的
[0, 5, 10, 15, 20, 25, 29.5, 30, 35, 40, 45, 50, 55, 59.5, 60]
谢谢
【问题讨论】:
-
你能提供预期的输入和输出吗?
-
你想要
60在列表末尾吗? -
感谢您的回复,我希望
x-0.5和x在x % 30 == 0时出现在列表中,在这种情况下,我希望 29.5 和 30 以及 59.5 和 60 出现在列表中
标签: python