最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

python函数重写怎么理解

来源:动视网 责编:小采 时间:2020-11-27 14:07:39
文档

python函数重写怎么理解

python函数重写怎么理解:在自定义类内添加相应的方法,让自定义类创建的实例能像内建对象一样进行内建函数操作,这就是函数重写。对象转字符串函数:repr(obj) ,返回一个能代表此对象的表达式字符串,通常eval(repr(obj)) == obj (这个字符串通常是给python解释执行器运行用的)
推荐度:
导读python函数重写怎么理解:在自定义类内添加相应的方法,让自定义类创建的实例能像内建对象一样进行内建函数操作,这就是函数重写。对象转字符串函数:repr(obj) ,返回一个能代表此对象的表达式字符串,通常eval(repr(obj)) == obj (这个字符串通常是给python解释执行器运行用的)
 在自定义类内添加相应的方法,让自定义类创建的实例能像内建对象一样进行内建函数操作,这就是函数重写。

对象转字符串函数:repr(obj) ,返回一个能代表此对象的表达式字符串,通常eval(repr(obj)) == obj (这个字符串通常是给python解释执行器运行用的),str(obj) 通过给定的对象返回一个字符串(这个字符串通常是给人阅读的)。

对象转字符串函数的重写方法:

repr(obj) 函数的重写方法:

def __repr__(self):

str(obj) 函数的重写方法:

def __str__(self):

说明:

1. str(obj) 函数先查找, obj.__str__()方法,调用此方法并返回结果

2. 如果没有obj.__str__()方法时,则返回obj.__repr__()方法的结果并返回

3. 如果obj.__repr__方法不存在,则调用object类的__repr__实例方法显示<__main__.XXXX object at 0xAABBCCDD>格式的字符串

示例:

# 此示例示意通过重写 repr 和 str方法改变转为字符串的规则
class MyNumber:
 def __init__(self, value):
 '构造函数,初始化MyNumber对象'
 self.data = value
 
 def __str__(self):
 '''转换为普通人识别的字符串'''
 # print("__str__方法被调用!")
 return "自定义数字类型对象: %d" % self.data
 
 def __repr__(self):
 '''转换为eval能够识别的字符串'''
 return 'MyNumber(%d)' % self.data
 
 
n1 = MyNumber(100)
n2 = MyNumber(200)
print('repr(n1) ====>', repr(n1))
print('str(n2) ====>', str(n2))

文档

python函数重写怎么理解

python函数重写怎么理解:在自定义类内添加相应的方法,让自定义类创建的实例能像内建对象一样进行内建函数操作,这就是函数重写。对象转字符串函数:repr(obj) ,返回一个能代表此对象的表达式字符串,通常eval(repr(obj)) == obj (这个字符串通常是给python解释执行器运行用的)
推荐度:
标签: 方法 重写 理解
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top