python中与另一个列表概率相反的列表

python中与另一个列表概率相反的列表,python,list,Python,List,我在python里有一个关于某件事的证明清单 aprob=[ 0.2 ,0.3, 0.0, 0.1, 0.4] 我想得到一个相反事件概率的列表 a_not_prob= [0.8, 0.7,1.0, 0.9,0.6] 问题是,我正在观看一个教程,其中有以下内容,但对我来说,它抛出了一个错误: a_not_prob=1.0-aprob 对我来说,这是一个错误 unsupported operand type(s) for -: 'float' and 'list' 有趣的是,对于讲师来说,

我在python里有一个关于某件事的证明清单

aprob=[ 0.2 ,0.3, 0.0, 0.1, 0.4]
我想得到一个相反事件概率的列表

a_not_prob= [0.8, 0.7,1.0, 0.9,0.6]
问题是,我正在观看一个教程,其中有以下内容,但对我来说,它抛出了一个错误:

a_not_prob=1.0-aprob
对我来说,这是一个错误

 unsupported operand type(s) for -: 'float' and 'list'
有趣的是,对于讲师来说,它是有效的


那么如何从第一个列表中得到第二个列表呢?

不能在列表和浮点之间进行减法运算 你可以这样做:

aprob=[ 0.2 ,0.3, 0.0, 0.1, 0.4]
ans = [1 - prob for prob in aprob]
print(ans)

你的语法让我想起了MATLAB。我在python中没有见过这样的东西。但是你可以简单地使用“列表理解”来完成你想要的东西。给你:


a\u not\u prob=[1-x代表aprob中的x]

如果
aprob=np.array([0.2,0.3,0.0,0.1,0.4])
那么
a\u not prob=1.0-aprob
工作您确定讲师没有使用numpy数组吗?如果没有numpy,那么
a\u not prob=[1.0-a代表aprob]
这是否回答了您的问题@不,不是。它们与我所问的完全不同。我想知道为什么人们在没有解释的情况下给答案加-1。我更新了你的答案,可能是因为“我在python中没有看到类似的东西”的说法是错误的。因为如果它是一个numpy数组,那么它是完全有效的syntax@DerekEden我肯定可能是错的,但我的陈述仍然是正确的。“我”还没有在python中看到任何类似的东西,但我绝不声称自己了解python的所有知识和所有库。我真正的意思是像这样的“原生python”语法,这是我从未见过的。无论如何,谢谢你:)