Python data hiding All In One

发布时间 2023-07-27 00:05:20作者: xgqfrms

Python data hiding All In One

private data / private method

⚠️ 约定:class 里面使用单个下划线,表示私有的属性私有的方法,实际上在 class 外面是可以访问

def _private_method():
  self._private_data = ""

demos


class Queue:
  def __init__(self, contents):
    self._hidden_list = list(contents)

  def push(self, value):
    self._hidden_list.insert(0, value)

  def pop(self):
    return self._hidden_list.pop(-1)

  def __repr__(self):
    return "Queue({})".format(self._hidden_list)

queue = Queue([1, 2, 3])
print(queue)
queue.push(0)
print(queue)
queue.pop()
print(queue)
print(queue._hidden_list)


"""

$ py3 ./data-hiding-queue.py

Queue([1, 2, 3])
Queue([0, 1, 2, 3])
Queue([0, 1, 2])
[0, 1, 2]
"""


(? 反爬虫测试!打击盗版⚠️)如果你看到这个信息, 说明这是一篇剽窃的文章,请访问 https://www.cnblogs.com/xgqfrms/ 查看原创文章!

refs

https://www.cnblogs.com/xgqfrms/p/17565339.html



©xgqfrms 2012-2021

www.cnblogs.com/xgqfrms 发布文章使用:只允许注册用户才可以访问!

原创文章,版权所有©️xgqfrms, 禁止转载 ?️,侵权必究⚠️!