Is there an `else` for for comprehensions
本问题已经有最佳答案,请猛点这里访问。
我有以下代码:
1 | [mc.split('$', 1)[-1] for mc in marketCapsUnclean if 'B' in mc] |
它可以转换如下内容:
1 | ['blabla $10M', 'blabla $10B'] |
号
进入之内
1 | ['$10B'] |
我希望得到不通过
1 | ['N/A', '$10B'] |
。
我想做如下的事情:
1 | [mc.split('$', 1)[-1] for mc in marketCapsUnclean if 'B' in mc else 'N/A'] |
但这不是合法的语法。
那么,有没有一种方法可以实现类似的理解?
在循环结构之前,在
1 | [mc.split('$', 1)[-1] if 'B' in mc else 'N/A' for mc in marketCapsUnclean ] |