Python可变和不可变、类的私有属性实例分析

yipeiwu_com6年前Python基础

本文实例讲述了Python可变和不可变、类的私有属性。分享给大家供大家参考,具体如下:

可变和不可变

items = []
print(id(list))
items.append(2) # items值改变了
print(id(list)) # 但内存地址没有变

id()函数获取内存地址。

a = "jack"
print(id(a))
b = "jack"
print(id(b)) # b内存地址和上面a一样
a = "zhangSan"
print(id(a)) # a内存地址变了
c = "zhangSan"
print(id(c))  # c内存地址和上面a一样

类的私有属性

#自定义类
class Person:
  __sex = "男"
  age = 18
  def show(self):
    print(self.__sex)
#实例化类
p = Person()
print(p.age) # 18

__开头定义的属性,就是类的私有属性。

这个类,可以通过p.age访问age属性;

但是p.sex来访问私有是sex属性就不行了。

那么,在类外部到底怎么访问类的私有属性呢?

p._Person__sex

实例化对象._类名__私有属性

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python函数使用技巧总结》、《Python面向对象程序设计入门与进阶教程》、《Python数据结构与算法教程》、《Python字符串操作技巧汇总》、《Python编码操作技巧总结》及《Python入门与进阶经典教程

希望本文所述对大家Python程序设计有所帮助。

相关文章

python实现异常信息堆栈输出到日志文件

将try except中捕获到的异常信息输出到日志文件中,方便查找错误原因,tranceback模块提供了把详细出错堆栈信息格式化成字符串返回函数format_exc(). 具体代码如下...

python奇偶行分开存储实现代码

python奇偶行分开存储实现代码

例子: 1:www.jb51.net 2:www.jb51.net 3:www.jb51.net 4:www.jb51.net 5:www.jb51.net 6:www.jb51.ne...

Python的UTC时间转换讲解

UTC时间转换,最终得到的都是UTC时间。 简单来说就是: 时间戳(timestamp) 转换-> UTC显示时间(datetime),使用time.gmtime(timestam...

python正则表达式修复网站文章字体不统一的解决方法

  网站的大框架下有定义的字体,包括字体大小和颜色等,用户发布文章的时候可能是从其他网站复制过来的文本,复制的过程也保留了字体描述信息。当文章在页面上显示的时候,默认先会使用文章中定义的...

把JSON数据格式转换为Python的类对象方法详解(两种方法)

把JSON数据格式转换为Python的类对象方法详解(两种方法)

JOSN字符串转换为自定义类实例对象 有时候我们有这种需求就是把一个JSON字符串转换为一个具体的Python类的实例,比如你接收到这样一个JSON字符串如下: {"Name": "...