gpt4 book ai didi

python - 为python矩阵中的匹配创建一个 bool 矩阵

转载 作者:行者123 更新时间:2023-11-28 22:49:26 25 4
gpt4 key购买 nike

假设我想检测 A 中的零:

A = [1, 0, 10, 5, 0, 0, 5]

我想

def check(x):
if x!=0:
return 0
elif x==0:
return 1
b = [check(x) for x in A]


-> b = [0, 1, 0, 0, 1, 1, 0]

但是如何使它成为一个单行呢?

最佳答案

通过列表理解。您可以使用 0 为假且任何非零整数为真这一事实:

>>> A = [1, 0, 10, 5, 0, 0, 5]
>>> [0 if a else 1 for a in A]
[0, 1, 0, 0, 1, 1, 0]

或者,等价地:

>>> [int(not a) for a in A]
[0, 1, 0, 0, 1, 1, 0]

只是一个有趣的数学技巧:

>>> [0**a for a in A]
[0, 1, 0, 0, 1, 1, 0]
>>> map((0).__pow__, A)
[0, 1, 0, 0, 1, 1, 0]

关于python - 为python矩阵中的匹配创建一个 bool 矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23886534/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com