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安装scipy的方法步骤

python安装scipy的方法步骤

Scipy高级科学计算库:和Numpy联系很密切,Scipy一般都是操控Numpy数组来进行科学计算、统计分析,所以可以说是基于Numpy之上了。 Scipy库的安装 pip ins...

python用模块zlib压缩与解压字符串和文件的方法

python中zlib模块是用来压缩或者解压缩数据,以便保存和传输。它是其他压缩工具的基础。下面来一起看看python用模块zlib压缩与解压字符串和文件的方法。话不多说,直接来看示例代...

Python的Flask框架中SQLAlchemy使用时的乱码问题解决

一、问题 这两天在学习使用flask + SQLAlchemy 定制一个web查询页面的demo ,在测试时,发现查询到的结果显示乱码 。这里将解决方法记录下。 二、解决思路 1、fla...

python3.6、opencv安装环境搭建过程(图文教程)

python3.6、opencv安装环境搭建过程(图文教程)

我需要使用tesseract-OCR的模块,vs的配置有点麻烦,所以采用py的环境,搭建。 1.在python.org网站下载python3.6版本 我下载的3.6.8的python的...

pandas 时间格式转换的实现

OUTLINE  常见的时间字符串与timestamp之间的转换 日期与timestamp之间的转换 常见的时间字符串与timestamp之间的转换 这里说的字符串不是一般意...