资讯专栏INFORMATION COLUMN

python学习笔记-访问限制

Sunxb / 3331人阅读

摘要:例如私有变量中将变量变成私有变量,只需要在变量名前加上两个。和方法有些情况下,我们将类中的某些属性设置为私有属性,并非是禁止类外部修改和获取。例如提供年龄校验功能

我们在定义一个类的时候,我们可以自由得修改和获取属性。例如:

class Student(object):
    name = "charlie"
    age = 20

student  = Student()
student.name = "Lucy"
私有(private)变量

python中将变量变成私有变量,只需要在变量名前加上两个_。例如__name
但是类中一些默认的属性例如__doc__等以__开始,以__结束,并非是私有变量,需要注意区分。

getter 和 setter方法

有些情况下,我们将类中的某些属性设置为私有属性,并非是禁止类外部修改和获取。而是设置getter方法供类外部使用。另外也设置setter方法用来设置某个属性值的同时提供校验。
例如:

class Student(object):
    __name = ""
    __age = 20

    def get_age(self):
        return self.__age

    def set_age(self, age):
        # 提供年龄校验功能
        if 0 < age < 100:
            self.__age = age
        else:
            return False
student = Student()
student.set_age(30)
print student.get_age()

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/38271.html

相关文章

  • Python学习之路8.2-对Python类的补充

    摘要:本章主要是对上一章类的补充。对于多态的补充子类可以被看成是父类的类型,但父类不能被看成是子类的类型。仍然以类为例,动物里有哺乳动物,卵生动物,有能飞的动物和不能飞的动物,这是两种大的分类方式。一般在中,以为结尾类的都作为接口。 《Python编程:从入门到实践》笔记。本章主要是对上一章Python类的补充。 1. 从一个类派生出所有类 上一篇文章说道Python类的定义与继承一般是如下...

    liukai90 评论0 收藏0
  • django rest framework个人学习笔记(六)————Tutorial4.认证于授权

    摘要:另外一个字段用于储存突出显示的代码的表示形式。这将确保认证用户拥有读写权限,而未认证用户只有读的权限。唯一的限制是必须是。 官网地址目前,我们的API没有对如 edit 或者 delect做出任何限制。我们希望有一些更加高级的功能能够做到: Code snippets 应该永远和创建者相关 只有认证的用户才能够创建snippets 只有创建者才能更新或者删除他的snippet 没有认...

    eternalshallow 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<