Python中str是函数还是类?关于str用法的技术问询
关于Python中
str是函数还是类的解答 嘿,这个问题问得特别到位——不少刚摸Python的小伙伴都会对这个点犯迷糊!其实答案很明确:str是一个类,而非单纯的函数,只不过它的用法让它看起来像函数而已。
咱们结合你提到的几个例子拆解一下:
- 当你写
'something '.strip()时,'something '是str类的一个实例,strip()是str类定义的实例方法——所有字符串对象(也就是str的实例)都能调用这个方法来去除首尾空白。 - 而
str(8)这种写法,本质是在调用str类的构造函数,创建一个新的str实例,把数字8转换成对应的字符串形式。这就像你用list()创建空列表、int('123')把字符串转成整数一样,都是通过调用类来生成实例。 type('a')返回str也能佐证这点:'a'是str类的一个实例,type()函数返回的就是这个实例所属的类。
简单来说,Python里的内置类型(比如str、int、list)本身都是类,它们既可以通过调用的方式生成实例(看起来像函数调用),同时这些实例也拥有各自类定义的方法(比如strip()、append())。
内容的提问来源于stack exchange,提问作者bluetooth
相关产品推荐
相关产品推荐

