python - 过滤掉特定的衍生品
问题描述
我已经生成了几个函数。
find_derivative 使用乘积规则简单地对几个项求导并生成一个新方程。
所以如果我输入 3x^2 + 2x^3
我得到 6x + 6x^2
在输出 [(6,1),(6,2)]
但是,我想在任何时候过滤掉以 0 开头的元组的输出
def find_derivative(function_terms):
new_function = []
for term in function_terms:
new_term = find_term_derivative(term)
new_function.append(new_term)
filtered_list = list(filter(lambda x: x != 0, new_function))
return filtered_list
输入 [(3, 2), (-11, 0)] 的预期结果应该是 [(6, 1)] 但此代码不会删除第二项 [0,-1]
编辑:导数函数
def find_term_derivative(term):
x, y = term
new_term = (x*y, y-1)
return new_term
解决方案
您对过滤器有正确的想法,但请看一下您编写的 lambda。您正在过滤条件lambda x : x != 0
,这将检查列表中的元素是否不为零。
但是列表中的元素是元组,并且您想检查是否只有元组中的第一个数字为零,因此您需要将条件更新为lambda x : x[0] != 0
.
推荐阅读
- c# - 对外部世界隐藏内部服务,以确保使用正确的高级服务
- r - 使用它们的协调从 data.frame 中提取元素
- r - Plot_ly 3d 绘图问题与解决方法
- javascript - 使用 HTML/PHP 在按钮单击时永久更新网站的 HTML 代码,这可能吗?
- javascript - 我们可以在 Angular 7 中使用 jQuery LightSlider 吗?
- node.js - 缺少对线性代码过程的理解承诺?
- python - 如何按键长度对字典进行排序,然后按值列表中的元素排序?
- ssl-certificate - 如何使用无服务器自动续订 Google Cloud 上的 Cloud Run for Anthos 的 Let's Encrypt SSL 证书?
- react-native - navigation.getParam 不是对象
- javascript - 将 JavaScript 函数转换为 Dart:安全词