zoukankan      html  css  js  c++  java
  • python学习之__str__,__repr__

    __str__(sekf) 类里没有定义这个方法,类的实例显示内存地址
    __str__(self) 类里有定义这个方法,类的实例显示具体属性值
    __repr__(self) 在解释器中有用
    str函数或者print函数--->obj.__str__()
    repr或者交互式解释器--->obj.__repr__()
    如果__str__没有被定义,那么就会使用__repr__来代替输出
    注意:这俩方法的返回值必须是字符串,否则抛出异常

    # l=list('hello')
    #
    # print(l)
    # file=open('test.txt','w')
    # print(file)

    class Foo:
    def __init__(self,name,age):
    self.name=name
    self.age=age
    def __str__(self):
    return '名字是%s 年龄是%s' %(self.name,self.age)
    #
    # f1=Foo('egon',18)
    # print(f1) #str(f1)--->f1.__str__()
    #
    # x=str(f1)
    # print(x)
    #
    # y=f1.__str__()
    # print(y)


    class Foo:
    def __init__(self,name,age):
    self.name=name
    self.age=age
    # def __str__(self):
    # return '折是str'
    def __repr__(self):
    return '名字是%s 年龄是%s' %(self.name,self.age)

    f1=Foo('egon',19)
    #repr(f1)---->f1.__repr__()
    print(f1) #str(f1)---》f1.__str__()------>f1.__repr__()

  • 相关阅读:
    Constructor构造方法
    overload重载
    static关键字
    this关键字
    继承
    ORACLE数据库 常用命令和Sql常用语句
    常见单词
    L贪心基础
    J贪心
    K贪心
  • 原文地址:https://www.cnblogs.com/jinpingzhao/p/12771716.html
Copyright © 2011-2022 走看看