如果某些元素是非数字的,我想在循环内部使用lambdas返回:
strs = ['1234', 'hello', '6787']
Run Code Online (Sandbox Code Playgroud)
我可以使用for循环并遍历每个元素:
for elem in strs:
Run Code Online (Sandbox Code Playgroud)
并检查elem.islpha().
但是,有没有办法使用lambdas耦合for循环来返回单词"hello"?
Ósc*_*pez 13
试试这个,使用列表理解很容易:
lst = ['1234', 'hello', '6787']
[x for x in lst if x.isalpha()]
=> ['hello']
Run Code Online (Sandbox Code Playgroud)
或者如果你肯定想要使用lambda:
filter(lambda x: x.isalpha(), lst)
=> ['hello']
Run Code Online (Sandbox Code Playgroud)
请注意,您很少使用lambdas在for循环内进行过滤,这不是惯用的.从列表中过滤元素的方法是使用列表推导,生成器表达式或(不太推荐)filter()内置函数.
| 归档时间: |
|
| 查看次数: |
3117 次 |
| 最近记录: |