Python基础:__str__()方法

一__str__()方法的作用

将__str__()返回的内容以字符串形式输出

二__str__()方法触发方式

1、通过print()函数触发

class Person:
    def __init__(self,name,age):
        self.name = name
        self.age = age

one = Person('小红',20)
print(one)

运行结果:
在这里插入图片描述
如上所示,定义一个Person类,创建对象one后使用print输出对象实例时,默认打印对象的内存地址。

class Person:
    def __init__(self,name,age):
        self.name = name
        self.age = age

    def __str__(self):
        return '姓名是{},年龄是{}'.format(self.name,self.age)
        

one = Person('小红',20)
print(one)

运行结果:
在这里插入图片描述
上述代码使用了__str__方法,当调用print()函数时,会找到实例对象one的__str__方法,输出__str__方法的返回值内容。

2、通过str()函数触发

class Person:
    def __init__(self,name,age):
        self.name = name
        self.age = age

    def __str__(self):
        return '姓名是{},年龄是{}'.format(self.name,self.age)


one = Person('小红',20)
words = str(one)
print(worlds,type(words))

运行结果:
在这里插入图片描述
使用str()函数触发__str__方法输出的内容与直接调用print()函数触发的结果看似相同,但是过程是不一样的。

- 使用print()函数触发:触发时,会自动寻找实例对象的方法,若没有则直接按照默认内容输出,有则输出__str__方法的返回值。
- 使用str()函数触发:如上述代码所示,使用str()触发时,worlds类型是str,是一个字符串,打印输出的是一个字符串words。

  • 15
    点赞
  • 64
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值