zoukankan      html  css  js  c++  java
  • Python3-私有化修改

     1 """
     2 私有化:
     3 封装:1.私有化属性  2.定义公有set和get方法
     4 __属性:将属性私有化,访问范围仅仅在类中
     5 好处:
     6     1.隐藏属性不被外界随意修改
     7     2.也可以修改:
     8         通过函数def setXXX(self,xxx):
     9                     3.筛选赋值的内容
    10                     if xxx是否符合条件
    11                         赋值
    12                     else:
    13                         不赋值
    14 3.如果想获取具体的某一个属性
    15     使用get函数
    16         def getXXX(self):
    17             return self.__xxx
    18 
    19 """
    20 class Person:
    21     def __init__(self,name,age):
    22         self.__name = name
    23         self.__age = age
    24         self.__score = 59
    25 
    26     # 定义公有set和get方法
    27     # set 是为了赋值
    28     def setName(self,name):
    29         self.__name = name
    30 
    31     def setAge(self,age):
    32         self.__age = age
    33 
    34 
    35     # get 是为了取值
    36     def getName(self):
    37         return self.__name
    38 
    39     def getAge(self):
    40         return self.__age
    41 
    42     def __str__(self):
    43         return "姓名:{} 年龄:{}  分数:{}".format(self.__name,self.__age,self.__score)
    44 
    45 
    46 p = Person("LiHua",15)
    47 print(p)            # 姓名:LiHua 年龄:15  分数:59
    48 
    49 p.setName('Seele')
    50 print(p.getName())  # LiHua
    51 
    52 p.setAge(20)
    53 print(p.getAge())   # 20

    升级版 

     1 class Person:
     2     def __init__(self,name,age):
     3         self.__name = name
     4         self.__age = age
     5 
     6     # 先有get
     7     @property
     8     def age(self):
     9         return self.__age
    10 
    11     # 再有set,因为set依赖于get
    12     @age.setter
    13     def age(self,age):
    14         self.__age = age
    15 
    16 p = Person("Seele",15)
    17 p.age = 20
    18 print(p.age)

    结果:20

  • 相关阅读:
    算法的力量
    图文细说11种计算机图标符号的历史
    位图像素的颜色
    位图像素的颜色
    大数处理之三(除法)
    大数处理之三(除法)
    大数处理之二(幂运算)
    大数处理之二(幂运算)
    浮点数(double)的优势
    大数处理之一(加法和乘法)
  • 原文地址:https://www.cnblogs.com/DemonKnifeGirl/p/13019934.html
Copyright © 2011-2022 走看看