python 3.x 的属性

可以将属性设置为 可读,可修改,可删除

# 只读属性,不允许修改和删除
class Test:
def __init__(self,value):
self.__value=value @property
def value(self): # 只读属性,不允许修改和删除
return self.__value t=Test(3)
t.value out:
3 t.value=5 # 出错,只读属性,不允许修改、删除 t.v = 5 # 动态增加新成员
t.v out:
5 del t.v # 动态删除新成员 # 把属性设置为可读、可修改,不允许删除
class Test:
def __init__(self,value):
self.__value=value def __get(self):
return self.__value def __set(self,v):
self.__value=v value=property(__get,__set) # 把属性设置为可读、可修改,不允许删除
def show(self):
print(self.__value) t=Test(3)
t.value=5 # 允许修改属性值
t.value out:
5 # 把属性设置为可读、可修改,可删除
class Test:
def __init__(self,value):
self.__value=value def __get(self):
return self.__value def __set(self,v):
self.__value=v def __del(self):
del self.__value value=property(__get,__set,__del) # 把属性设置为可读、可修改,可删除
def show(self):
print(self.__value) t=Test(3)
t.value out:
3 del t.value # 删除属性值

python程序设计——面向对象程序设计:属性的更多相关文章

  1. python程序设计——面向对象程序设计:类

    理解面向对象 基本原则是,计算机程序由多个能够起到子程序作用的单元或对象组合而成 关键性观念是,数据以及对数据的操作封装在一起,组成一个相互依存.不可分割的整体,即对象 python面向对象特性 完全 ...

  2. python程序设计——面向对象程序设计:继承

    继承是为代码复用和设计复用而设计的 在继承关系中,已有的.设计好的类称为父类或基类,新设计的类为子类或派生类 派生类可以继承父类的公有成员,但不能继承其私有成员 如果需要在派生类中调用基类的方法,可以 ...

  3. python程序设计——面向对象程序设计:方法

    类中定义的方法分为四类:公有方法,私有方法,静态方法,类方法 公有方法.私有方法都属于对象,私有方法的名字以"__"开始 每个对象都有自己的公有方法和私有方法,这两类方法可以访问属 ...

  4. Python之面向对象:属性

    一.属性定义 1.类属性 类属性定义在类中且在函数体之外:类属性通常不作为实例属性使用:类变量紧接在类名后面定义 类属性的引用:类名.count eg:Employee.count 实例中可以引用类的 ...

  5. C++基本程序设计——面向对象程序设计课堂笔记

    主要对老师上课的ppt的笔记整理 C++基本程序设计 1.c++的输入输出 使用cin,cout和流运算符,开头须有 #include<iostream> (1)cin语句:cin> ...

  6. 你好,C++(31)我终于找到对象啦!6.1 从结构化设计到面向对象程序设计

    第6章 当C++爱上面向对象 很多第一次进入C++世界的人都会问:C++中的那两个加号到底是什么意思啊? C++是由C语言发展而来的,它比C语言多出的两个加号,实际上是C语言的自增操作符,表示C++语 ...

  7. (C/C++学习笔记) 十七. 面向对象程序设计

    十七. 面向对象程序设计 ● 面向对象程序设计的基本概念 ※ 类实际上是一种复杂的数据类型,它不仅包含不同类型的数据,还包含对这些数据的一些必要的操作. 而对象则是这种复杂的数据类型的一个变量. 类是 ...

  8. [Python学习笔记][第六章Python面向对象程序设计]

    1月29日学习内容 Python面向对象程序设计 类的定义与使用 类定义语法 使用class关键词 class Car: def infor(self): print("This is ca ...

  9. Python进阶---面向对象的程序设计思想

    Python的面向对象 一.面向过程与面向对象的对比 面向过程的程序设计的核心是过程(流水线式思维),过程即解决问题的步骤,面向过程的设计就好比精心设计好一条流水线,考虑周全什么时候处理什么东西. 优 ...

随机推荐

  1. DPDK测试用例(sample)编译

    前言 要使用DPDK的测试用例,必须先进行编译,以此记录编译的操作,方便日后查找 编译用例 设置环境变量,将DPDK的目录路径添加到编译代码中,RTE_SDK指示DPDK目录路径: export RT ...

  2. Gradle Goodness: Copy Files with Filtering

    Gradle Goodness: Copy Files with Filtering Gradle's copy task is very powerful and includes filterin ...

  3. 什么是Spring框架? Spring框架有哪些主要的模块?

    Spring框架是一个为java应用程序的开发提供了综合,广泛的基础性支持的java平台.Spring帮助开发者解决了开发中基础性的问题,使得开发人员可以专注于应用程序的开发.Spring框架本身亦是 ...

  4. oracle安装程序异常终止解决办法

    安装Oracle时总是会报程序异常终止,摸不着头脑,作为初学者一下就乱了分寸   工具/原料   Oracle软件包 win764位 方法/步骤     右击Oracle安装图标setup.exe,选 ...

  5. ios 开发UI篇— UIToolbar

    前言 NS_CLASS_AVAILABLE_IOS(2_0) __TVOS_PROHIBITED @interface UIToolbar : UIView <UIBarPositioning& ...

  6. 浅谈 Virtual DOM 的那些事

    背景 我们都知道频繁的dom给我们带来的代价是昂贵的,例如我们有时候需要去更新Table 的部分数据,必须去重新重绘表格,这代价实在是太大了,相比于频繁的手动去操作dom而带来性能问题,vdom很好的 ...

  7. Xquery的初步学习(一次Lab作业的总结)

    Task 1: Open countries.xml, compose the following XQueries: 1. Return the area of Mongolia. 2. Retur ...

  8. 两种方法实现Linux不活动用户登录超时后自动登出

    在平常的工作中,windows系统使用的比较多一些,身边的很多同事都会对自己的电脑进行一些个性化设置,比如离开一段时间后自动锁屏.自动关闭屏幕.自动注销当前登录等.在windows下可以这样操作,那么 ...

  9. MySQL用户账户管理/权限管理/资源限制

    MySQL 的权限表在数据库启动的时候就载入内存,当用户通过身份认证后,就在内存中进行相应权限的存取,这样,此用户就可以在数据库中做权限范围内的各种操作了. mysql 的权限体系大致分为5个层级: ...

  10. mysql5.6升级为mysql5.7部署jboss/wildfly应用项目

    一.部署mysql5.7二进制版 解压tar -xvf mv mysql-5.7  /usr/local/mysql5.7  或者其他文件夹 cd  /usr/local/mysql.57 usera ...