我有以下代码:
def tau_r(u):
return (u_1 < u < u_2) * (T1 - T2) + T2
if __name__ == "__main__":
figure()
plot(u, tau_r(u))
show()
运行时出现以下错误:
ValueError:具有多个元素的数组的真值是不明确的。使用a.any()或a.all()
我想这是因为它将u视为列表,而它应该分别对列表的每个元素执行任务。 我该如何解决这个问题?
答案 0 :(得分:1)
您可以使用map
将相同的功能应用于列表的所有元素。它将返回一个新列表,其中包含函数中返回的每个值。
plot(u, list(map(tau_r, u)))