python - 列表和嵌套列表的简单点积以单独列表中的索引为条件

标签 python

这是一个使用嵌套列表和普通列表的简单点积(或和积)。

x1 = [[1, 1, 1], [9, 9, 9]]
x2 = [2, 2, 2]
M = [0]

result = []
for x in x1:
    result.append(sum(a * b for a, b in zip(x, x2)))

结果

[6, 54]

但是,在涉及 M 中指定的索引 m 的情况下,我希望结果中的某些元素可能为 None。

我想进行这样的比较:对于每个 x[m] < x2[m]那么附加的值应该是 None 而不是总和。

因此使用上面的示例所需的结果应该是:

result = [None, 54]

...因为 1 < 2 为真,所以无

...而 9 < 2 为假,因此请按照其他方式附加总和:54

要求 M 的长度可以变化并且可以为空。

最佳答案

只需在最后添加最终调节即可?

for m in M:
    if x[m] < x2[m]:
        result[m] = None

关于python - 列表和嵌套列表的简单点积以单独列表中的索引为条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57104336/

相关文章:

python - 如何在一段时间内使用 pandas groupby 来查找同一时间​​段内多年来的平均计数

python - 如何重现由 sqlalchemy session 缓存引起的错误

python - 在 python 3 中的函数中创建动态命名变量/理解 python 3 中的 exec/eval/locals

python - 使用继承类确定 Python 类的类型

python - 为什么 django 自定义命令中导入的 python 脚本会覆盖 optparse 选项

Python - 从多个 Zip 文件中提取 CSV 文件并合并数据

python - 如何在 Google App Engine 上用 Python 解析 xml

python - 字符串到变量然后循环递增

python - opengl设置纹理颜色和顶点颜色

python - Linux:Conda 无法安装 Anaconda