我想写一个python函数如下:
import numpy as np
a = [[-0.17985, 0.178971],[-0.15312,0.226988]]
(lambda x: x if x > 0 else np.exp(x)-1)(a)
下面是python错误消息:
TypeError Traceback (most recent call last)
<ipython-input-8-78cecdd2fe9f> in <module>
----> 1 (lambda x: x if x > 0 else np.exp(x)-1)(a)
<ipython-input-8-78cecdd2fe9f> in <lambda>(x)
----> 1 (lambda x: x if x > 0 else np.exp(x)-1)(a)
TypeError: '>' not supported between instances of 'list' and 'int'
如何解决此问题
例如:
a = [[-0.17985, 0.178971],[-0.15312,0.226988]]
b = f(a)
预期产量
b = [[-0.1646, 0.17897],[-0.14197, 0.22699]]
您有一个列表列表,因此需要额外的迭代:
由于最终结果是一个列表,因此使用列表理解可以更好地解决此问题:
或者使用定义的
lambda
:相关问题 更多 >
编程相关推荐