如何在python中检查变量的类型?

时间:2017-07-24 06:52:04

标签: python python-3.x dictionary

我正在寻找一种方法将一个程序的所有输出(我不知道它们的类型是什么)转换为字典... 我想到这样的解决方案:

if type(body) != dict:
    body = {'result': body}

我知道这是错的! 有没有办法,如果变量的类型不是字典,我们自己创建一个字典?!

1 个答案:

答案 0 :(得分:1)

如果您的对象不是dict但可以轻松转换为dict(例如,对列表),您可以使用:

def make_a_dict(some_object):
    if isinstance(some_object, dict):
        return some_object
    else:
        try:
            return dict(some_object)
        except:
            return {'return': some_object}

print(make_a_dict({'a': 'b'}))
# {'a': 'b'}
print(make_a_dict([(1,2),(3,4)]))
# {1: 2, 3: 4}
print(make_a_dict(2))
# {'return': 2}