Use _PyObject_CallMethodIdObjArgs()

Issue #28915: Replace _PyObject_CallMethodId() with
_PyObject_CallMethodIdObjArgs() in various modules when the format string was
only made of "O" formats, PyObject* arguments.

_PyObject_CallMethodIdObjArgs() avoids the creation of a temporary tuple and
doesn't have to parse a format string.
diff --git a/Python/marshal.c b/Python/marshal.c
index 0889e41..d71d3c2 100644
--- a/Python/marshal.c
+++ b/Python/marshal.c
@@ -1649,7 +1649,7 @@
     s = PyMarshal_WriteObjectToString(x, version);
     if (s == NULL)
         return NULL;
-    res = _PyObject_CallMethodId(f, &PyId_write, "O", s);
+    res = _PyObject_CallMethodIdObjArgs(f, &PyId_write, s, NULL);
     Py_DECREF(s);
     return res;
 }