• python之面向对象02


    在python中方法名如果是__xxxx__()的,那么就有特殊的功能,因此叫做“魔法”方法

    1. __init__()方法

     1 class Cat:
     2     def __init__(self,newname,newage):
     3         self.name = newname
     4         self.age = newage
     5 
     6     def eat(self):
     7         print("%s在吃鱼。"%self.name)
     8     def drink(self):
     9         print("%s在喝奶茶。"%self.name)
    10     def introduce(self):
    11         print("名字是:%s,年龄是:%d"%(self.name,self.age))
    12 tom = Cat("汤姆",5)
    13 tom.eat()
    14 tom.drink()
    15 tom.introduce()

    总结

    • __init__()方法,在创建一个对象时默认被调用,不需要手动调用
    • __init__(self)中,默认有1个参数名字为self,如果在创建对象时传递了2个实参,那么__init__(self)中出了self作为第一个形参外还需要2个形参,例如__init__(self,x,y)
    • __init__(self)中的self参数,不需要开发者传递,python解释器会自动把当前的对象引用传递进去

    2. __str__()方法

     1 class Cat:
     2     def __init__(self,newname,newage):
     3         self.name = newname
     4         self.age = newage
     5     def __str__(self):
     6         # 返回一个对象的描述信息
     7         return "名字是:%s,年龄是:%d"%(self.name,self.age)
     8 
     9 #     def eat(self):
    10 #         print("%s在吃鱼。"%self.name)
    11 #     def drink(self):
    12 #         print("%s在喝奶茶。"%self.name)
    13 #     def introduce(self):
    14 #         print("名字是:%s,年龄是:%d"%(self.name,self.age))
    15 tom = Cat("汤姆",5)
    16 print(tom)
    17 # tom.eat()
    18 # tom.drink()
    19 # tom.introduce()

    总结:

    • 当使用print输出对象的时候,只要自己定义了__str__(self)方法,那么就会打印从在这个方法中return的数据。
    • __str__方法需要返回一个字符串,当做这个对象的描写。

      

  • 相关阅读:
    Python内置函数(22)——list
    Git在不同环境换行符设置
    Spring之AOP
    Spring之IOC
    Spring--框架简介
    git-远程协作
    git-SSH连接配置
    git-本地操作
    git简介
    浅谈Sql各种join的用法
  • 原文地址:https://www.cnblogs.com/ma1998/p/12400400.html
Copyright © 2020-2023  润新知