如何在python中检查变量是否是字典?

How to check if a variable is a dictionary in Python?

本问题已经有最佳答案,请猛点这里访问。

在python中,如何检查变量是否是字典?

例如,id希望它遍历字典中的值,直到找到一个字典,然后遍历找到的字典:

1
2
3
4
5
6
7
dict = {'abc':'abc','def':{'ghi':'ghi','jkl':'jkl'}}
for k, v in dict.iteritems():
    if ###check if v is a dictionary:
        for k, v in v.iteritems():
            print(k,' ',v)
    else:
        print(k,' ',v)


您可以使用if type(ele) is dict或isinstance(ele,dict),如果您已将dict子类化:

1
2
3
4
5
d = {'abc':'abc','def':{'ghi':'ghi','jkl':'jkl'}}
for ele in d.values():
    if isinstance(ele,dict):
       for k, v in ele.items():
           print(k,' ',v)