bpo-39573: Clean up modules and headers to use Py_IS_TYPE() function (GH-18521)

diff --git a/Modules/_json.c b/Modules/_json.c
index ee2070c..d9346a7 100644
--- a/Modules/_json.c
+++ b/Modules/_json.c
@@ -13,9 +13,9 @@
 #include "pycore_accu.h"
 
 #define PyScanner_Check(op) PyObject_TypeCheck(op, &PyScannerType)
-#define PyScanner_CheckExact(op) (Py_TYPE(op) == &PyScannerType)
+#define PyScanner_CheckExact(op) Py_IS_TYPE(op, &PyScannerType)
 #define PyEncoder_Check(op) PyObject_TypeCheck(op, &PyEncoderType)
-#define PyEncoder_CheckExact(op) (Py_TYPE(op) == &PyEncoderType)
+#define PyEncoder_CheckExact(op) Py_IS_TYPE(op, &PyEncoderType)
 
 static PyTypeObject PyScannerType;
 static PyTypeObject PyEncoderType;