我如何比较两个变量的类型而不生成PyLint警告?

说我有两个变量:

a = 123
b = 234

我想比较他们的类型.显然,显而易见的方法是:

type(a) == type(b)

但是,pylint给我警告,如果可能的话,我想避免:

Using type() instead of isinstance() for a typecheck. (unidiomatic-typecheck)

(我认为这并不是我使用的特别警告.)

我认为,在比较两个变量类型的情况下,不能使用isinstance.

如何在不生成PyLint警告的情况下比较两个变量的类型?

最佳答案

人们对棉短绒太挂了.就像PEP 8 style guide.它们是准则,您必须使用自己的判断.

如果您需要知道某种事物的类型是否与其他事物的类型相同,那么绝对简单

type(a) == type(b)

是最Python的方式.如果可以避免的话,Python并非一成不变的,它会跳出疯狂的篮球来做简单的事情.

综上所述,在Python中通常并不是真正需要知道两件事的类型是否完全相同的情况. (请参阅BrenBarn和Chad S的评论.)因此,短绒棉可能指向的是更大的“代码味道”,而不仅仅是比较这两种类型的那一行.