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使用pymongo操作mongo的完整步骤

前言 MongoDB是由C++语言编写的非关系型数据库,是一个基于分布式文件存储的开源数据库系统,其内容存储形式类似JSON对象,它的字段值可以包含其他文档、数组及文档数组,非常灵活。在...

django 多数据库配置教程

在django项目中, 一个工程中存在多个APP应用很常见. 有时候希望不同的APP连接不同的数据库,这个时候需要建立多个数据库连接。 1. 修改项目的 settings 配置 在 s...

Python中的字符串切片(截取字符串)的详解

Python中的字符串切片(截取字符串)的详解

字符串索引示意图 字符串切片也就是截取字符串,取子串 Python中字符串切片方法 字符串[开始索引:结束索引:步长] 切取字符串为开始索引到结束索引-1内的字符串 步长不指定时步长为...

在Python的循环体中使用else语句的方法

本文讨论Python的for…else和while…else语法,这是Python中最不常用、最为误解的语法特性之一。 Python中的for、while循环都有一个可选的else分支(...

基于Python3.6+splinter实现自动抢火车票

本文实例为大家分享了python实现自动抢火车票,供大家参考,具体内容如下 splinter使用 首先介绍一下splinter使用: plinter.brower是一个开源工具,通过Py...