如何在Python中确定数据类型?

时间:2009-12-13 11:41:30

标签: python

ASTRING ( '一个', '元组')

如何确定“x”是元组还是字符串?

3 个答案:

答案 0 :(得分:8)

if isinstance(x, basestring):
   # a string
else:
   try: it = iter(x)
   except TypeError:
       # not an iterable
   else:
       # iterable (tuple, list, etc)

@Alex Martelli's answer详细描述了为什么在使用Python中的类型时应该更喜欢上述样式(感谢@Mike Hordecki的链接)。

答案 1 :(得分:5)

isinstance(x, str)
isinstance(x, tuple)

一般来说:

isinstance(variable, type)

检查variabletype(或其子类型)(docs)的实例。

PS。不要忘记字符串也可以在unicode(在这种情况下为isinstance(x, unicode))(或isinstance(x, basestring)(谢谢,JF Sebastian!),它会检查str和{ {1}})。

答案 2 :(得分:0)

使用isinstance(),一般语法是:

if isinstance(var, type):
    # do something