如何检查对象类型

时间:2013-10-31 18:03:55

标签: list python-2.7 python-3.x

如何检查列表中所有元素的类型?

例如,我有一个列表:

li = ["Hello", 12121, False]

如何创建一个遍历列表中每个元素的程序并输出每个元素的类型

如“地狱”是一个字符串

12121是一个整数

False是一个布尔值。

1 个答案:

答案 0 :(得分:0)

查看Python的内置isintance方法,以及type方法。要查找整个列表,您可以简单地遍历列表并输出type方法的结果。

例如:

for item in list:
    print type(item)

或者如果您期望某些类型:

for item in list:
    if isinstance(item,basestring):
        print "I am a type of string!"
    if isinstance(item,(str,unicode)):
        print "I am a str or unicode!"
    if isinstance(item,int):
        print "I am a type of int!"
    if isinstance(item,(int,float)):
        print "I am an int or a float!"
    if isinstance(item,bool):
        print "I am a boolean!"
    if isinstance(True,bool):
        print "I am a boolean!"
    if isinstance(True,int):
        print "I am an int!"  # because booleans inherit from integers ;)

isinstance方法通常更好,因为它会检查继承的类。有关详细讨论,请参阅this post