python Class:改变私有变量的值的2种方法
admin
2023-07-21 02:22:48
0

改变类的私有变量的值有2种方法:

  1. 间接:为这个私有变量提供一个操作的方法,如:def get_score(self, score)

  2. 直接:实例名._类名__私有变量名 = 值, 如:f._Student__score = 10


  1. 间接

#!/usr/bin/python
# -*- coding: utf-8 -*-
class Student(object):
    def __init__(self,name, score):
        self.__name = name
        self.__score = score
        
    def set_score(self, score):
        if score < 11:
            print "false"
            return False
        self.__score = score
        return self.__score
        
    def get_score(self):
        return self.__score
        
f = Student('hah', 11)
print f.get_score()
f.set_score(12)
print f.get_score()

运行结果:

11
12


2.直接

#!/usr/bin/python
# -*- coding: utf-8 -*-
class Student(object):
    def __init__(self,name, score):
        self.__name = name
        self.__score = score
        
    def set_score(self, score):
        if score < 11:
            print "false"
            return False
        self.__score = score
        return self.__score
        
    def get_score(self):
        return self.__score
        
f._Student__score=13
print f.get_score()

运行结果:

13



相关内容

热门资讯

梁文杰称台湾人几乎不吃凤梨释迦... 海峡导报综合报道 台陆委会副主委梁文杰18日称凤梨释迦“台湾人几乎不吃,是仰大陆鼻息的农产品”,引起...
伊朗谈判代表已启程前往瑞士 据伊朗方面20日消息,伊朗谈判代表已启程前往瑞士,就谅解备忘录与美方进行讨论。6月20日,巴基斯坦外...
美军称暂未观察到伊朗关闭霍尔木... 新华社华盛顿6月20日电 据美国媒体20日援引美国高级官员的话报道称,美军暂未观察到伊朗关闭霍尔木兹...
万亿市场,“爆发前夜” 就在SpaceX6月12日完成纳斯达克首秀前,创始人埃隆·马斯克在一场访谈上确认,SpaceX正在开...
乌俄互指对方在赫尔松州发动袭击 乌克兰赫尔松州军事管理局20日在社交媒体发文称,截至当天早上6时,赫尔松州乌控区在过去24小时内遭俄...
伊朗外长将与巴基斯坦内政部长一... 当地时间20日,有消息显示,伊朗外长阿拉格齐20日晚将与巴基斯坦内政部长纳克维一同前往瑞士。伊朗外交...
文博日历丨早在8000年前 古... 端午假期各地特色龙舟活动轮番亮相其实,早在8000年前先民们就已经是有船一族了今天带你一起解锁“远古...
凤凰晚报丨35岁宝妈亲手勒死3... 今日人物【35岁宝妈亲手勒死3个娃,丈夫:不怪她】最近,美国马萨诸塞州一起震惊全美的“杀婴案”再次开...
被梅洛尼回怼后,特朗普怒发帖 美国总统特朗普声称意大利总理梅洛尼在G7峰会上央求与自己合影,梅洛尼正面回击,称这一说法“完全是捏造...
雨虹免砸砖防水靠谱吗 最佳回答 雨虹本身是一个非常知名的品牌,只要家里面的漏水问题不是特别严重,那使用雨虹免砸装防水还是非...