要检查
o是的实例
str还是的任何子类str,请使用
isinstance(这是“规范”的方式):
if isinstance(o, str):
要检查的类型
o是否准确
str(排除子类):
if type(o) is str:
以下内容也可以使用,并且在某些情况下可能有用:
if issubclass(type(o), str):
有关相关信息,请参见Python库参考中的内置函数。
还有一点要注意:在这种情况下,如果您使用的是Python 2,则实际上可能要使用:
if isinstance(o, basestring):
因为这也将赶上Unipre字符串(
unipre不是的子类
str,这两个
str和
unipre是的子类
basestring)。请注意,
basestring在Python 3中不再存在,在Python 3中,字符串()和二进制数据()严格分开。
strbytes
或者,
isinstance接受一个类的元组。
True如果
o是以下任何一个的任何子类的实例,则将返回
(str, unipre):
if isinstance(o, (str, unipre)):



