Python3中如何实现获取任意类型默认值的函数
Python 获取类型默认值的实现方法
要实现接收type类型参数并返回对应默认值的函数,最直接的方式是调用该类型的空构造函数——Python里绝大多数内置类型的无参调用都会返回其"默认值":
def get_default_value(value_type: type): return value_type()
测试示例
- 传入
int:get_default_value(int)返回0 - 传入
str:get_default_value(str)返回""(空字符串) - 传入
list:get_default_value(list)返回[](空列表) - 传入
dict:get_default_value(dict)返回{}(空字典) - 传入
bool:get_default_value(bool)返回False
自定义类型的适配
这个逻辑同样适用于自定义类,只要你的类支持无参构造方法:
class User: def __init__(self): self.name = "" self.age = 0 # 调用后返回一个初始化好的User实例 user_default = get_default_value(User)
注意事项
少数特殊类型可能没有无参构造(比如某些第三方库的类),这种情况需要针对具体类型做额外处理,但对于Python内置的基础类型,上述方法完全够用。
内容的提问来源于stack exchange,提问作者DesktopDev
相关产品推荐
相关产品推荐

