python if语句组不起作用

问题背景:有w1 2 3 4四个策略矩阵以及与之相对应的w1pay w2pay等四个支付矩阵,npay是在四个支付矩阵中随机选择的一个矩阵。

想要达到的目的是:返回npay支付矩阵对应的策略矩阵(对应的策略矩阵用n表示)。

我尝试写了如下代码,但是运行很多次,无论npay是w1pay等四个支付矩阵中的哪一个,结果都返回w4。

if (npay == w1pay) is True:
    n = w1
elif (npay == w2pay) is True:
    n = w2
elif (npay == w3pay) is True:
    n = w3
else:
    n = w4

想请大家帮我看看是哪里写错了,万分感谢!🌹

你直接判断他俩是否相等不就可以了么,还有就是你在if前打印出四个策略展示出什么样子的,看他们是否相等,不相等最后肯定就走到4了,而且你的if语句肯定走了,就是看if里你的条件他们是否相等 还有类型是什么样的