我想生成一个如下所示的列表:
['ret-120','ret-115','ret-110',....'ret-5','ret5',....'ret240']
请注意,列表中没有 ret0
元素。所以我必须将它从范围函数填充的列表中删除。我试过:
['ret'+str(x) for x in list(range(-120,241,5)).remove(0)]
然而这给出了一个错误:
TypeError: 'NoneType' object is not iterable
这是否可以用一行代码来完成?
最佳答案
做你想做的最简单的方法是在你的列表理解中添加一个条件:
lst = ['cumRet'+str(x) for x in xrange(-120,241,5) if x != 0]
# This part: ^^^^^^^^^
我还删除了不必要的列表创建并更改了 range
->xrange
(注意这个 range
->xrange
更改仅适用于 Python2)
关于python - 从列表中删除一个元素并返回结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29090828/