Python中str()、int()等内置对象属于函数还是类?
Python中str()、int()等是调用函数还是构造方法?
在Python里,调用str(<something>)、int()、complex()这类写法,本质是在调用对应内置类的构造方法,而非普通函数。
原因很简单:Python里的str、int、complex本身就是类,不是独立的函数。当你以str(obj)的形式调用时,其实是在实例化str类,这个过程会触发类的构造逻辑(包括__new__和__init__方法),最终返回该类的一个实例。
你可以直接验证这个结论:
print(type(str)) # 输出: <class 'type'>,说明str是类类型 print(type(int)) # 同样输出: <class 'type'>
所以不管是str("abc")还是int(12.3),本质都是在调用对应内置类的构造方法来创建实例。
内容的提问来源于stack exchange,提问作者user3103957
相关产品推荐
相关产品推荐

