品易云推流 关闭
文章详情页
文章 > Python基础教程 > _str_如何在python中进行重载?

_str_如何在python中进行重载?

Python str

头像

小妮浅浅

2021-01-11 15:07:083269浏览 · 0收藏 · 0评论

我们面对一些相似的事物时,可以想给它们定义一个名称。为了能在日后的使用中不会混淆,可以加入参数进行区分,这就是对于重载的理解。今天同样为大家继续讲述魔法函数中的内容,常见的_str_的使用想必大家已经学过了,这里我们就_str_在python中进行重载的方法给大家带来分享。

1.str函数,会 return一个字符串

2.当调用print函数,传入一个类的实例,这个类里面定义了_str_函数,这时候就会调用

class A():
    def __init__(self,name=9):
        self.name=name
        
    def __str__(self):
        return ("我是__str__,你调用了我")
 
#怎么调用__str__方法
a=A(12)

__str__类似于Java当中的toString方法,可以根据我们的需要返回实例转化成字符串之后的结果。

比如,我们可以在类当中重载这个方法,就可以根据我们的需要输出结果了:

class point:
    def __init__(self, x, y):
        self.x = x
        self.y = y
 
    def __str__(self):
        return 'x: %s, y: %s' % (self.x, self.y)

当我们运行它,得到的结果会是:

x: 3, y: 4

__str__和__init__,__len__很多函数一样是Python中的特殊函数,在我们创建类的时候,系统会我们隐式创造许多这样的特殊函数。我们可以根据需要重载其中的一部分完成我们想要的功能。比如如果我们写的是一棵二叉树的类,我们还可以在__str__函数当中进行递归遍历所有的节点,打印出完整的树来。

以上就是_str_在python中进行重载的方法了,在开始重载之前,对_str_基本使用还不会的,可以看看我们上面的代码模块。

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

底部广告图