是的,任何数字都将小于Python 2中的任何字符串(包括空字符串)。
在Python 3中,您无法进行任意比较。你会得到一个TypeError
。
if (PyNumber_Check(v))
vname = "";
else
vname = v->ob_type->tp_name;
if (PyNumber_Check(w))
wname = "";
else
wname = w->ob_type->tp_name;
c = strcmp(vname, wname);