Python中如何匹配输入格式,判断参数是数组还是字典的函数叫什么?

记得以前阅读源码的时候看到过, 现在不太记得了...


Python中如何匹配输入格式,判断参数是数组还是字典的函数叫什么?
4 回复

在Python里,判断一个参数是列表(数组)还是字典,直接用内置的type()函数或者isinstance()函数就行。

type(obj)会直接返回对象的类型,你可以拿它和listdict这些类型做比较。不过更推荐用isinstance(obj, type),因为它能正确处理继承关系,比如判断一个对象是不是某种类型的子类。

给你看个简单的例子:

def check_type(input_data):
    if isinstance(input_data, list):
        return "这是一个列表(数组)"
    elif isinstance(input_data, dict):
        return "这是一个字典"
    else:
        return f"这是其他类型: {type(input_data)}"

# 测试一下
print(check_type([1, 2, 3]))        # 输出:这是一个列表(数组)
print(check_type({"a": 1, "b": 2})) # 输出:这是一个字典
print(check_type("hello"))          # 输出:这是其他类型: <class 'str'>

简单说,用isinstance()最稳。

是的, 太感谢了

type 还是 typeof 来着,忘了

回到顶部