【python】类中一些特殊方法和特殊变量介绍__init__(),私有变量

1.__init__()方法

代码:

class Student(object):
    def __init__(self,name,score,gender):
        self.__name=name
        self.__score=score

        self.__gender=gender

作用是创建实例的时候,强制绑定属性,不然报错

wjc=Student('wangjincheng',99,'male')

2.私有变量,get和set方法

变量前面加两个下划线,就变成私有变量。

作用是让内部属性不让外部直接访问,要想访问只能通过get和set方法访问和修改,这样还可以对修改的属性进行内部校验

    def get_name(self):
        return self.__name
    def get_score(self):
        return self.__score
    def get_gender(self):
        return self.__gender
#通过set方法修改男女性别时进行校验飞,防止输入错误
    def set_gender(self,gender):
        if isinstance(gender,str):
            gender=str.lower(gender)
            
        if gender=='男' or gender=='女' or gender=='male' or gender=='female':
            self.__gender=gender
        else:

            raise ValueError('input not correct')

#对分数进行校验

    def set_score(self,score):
        if 0 <= score <=100:
            self.__score=score
        else:

            raise ValueError('input wrong')


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值