Discuss / Python / day14-6月14日

day14-6月14日

Topic source

Promethues

#1 Created at ... [Delete] [Delete and Lock User]

###访问限制

class student1(object):

    def __init__(self,name,score):

        self.__name = name  #双下划线开头代表private变量,系统将储存为_student1__name (当然不是所有版本都这样)

        self.__score = score

    def set_name(self,name):

        if not isinstance(name,str):

            raise ValueError('bad name')

        self.__name = name

    def get_name(self):

        return self.__name

s = student1('angel',99)

print(s._student1__name) # 虽然__name是私有,依然可以通过_student1__name来直接调用

print(s.get_name())

s.__name = 'violet' #此时为s创建了一个新的共有成员__name,与原来的_student1__name并不相同。

print(s.__name)

print(s.get_name())

s.set_name(12)


  • 1

Reply