文档章节

python类方法的动态属性

fjxichao
 fjxichao
发布于 2015/01/17 23:37
字数 188
阅读 12
收藏 0
class A(object):
    def f(self):   #这里的f函数定义与否没有关系
        pass
        
def f1(self):
    print "f1"
    
def f2():
    print "f2"
    
在类A中动态添加方法,一定要有self参数,如f1一样
A.f1=f1     #或者更新f ...  A.f=f1

在对象中动态添加方法,一定不要有self参数,如f2一样

a=A()
a.f2=f2     #或者更新f方法 ...  a.f=f2


  

"""
__slots__的使用:Python定义class的时候,定义一个特殊的__slots__变量,来限制该class能添加的属性
"""

class A(object):
    __slots__=("name","age") 
#用tuple定义允许绑定的属性名称,只允许对A实例添加name和age属性,添加使用其他属性就报错


© 著作权归作者所有

共有 人打赏支持
fjxichao
粉丝 4
博文 67
码字总数 16562
作品 0
西安
程序员
私信 提问
Python基础总结成千行代码,让Python入门更简单!

只要学会这千行代码,不管你是零基础还是弱基础或是没有接触过编程,都可以快速入门Python!当时我就不信邪啊,等我看完之后,即使作为一个Python老鸟了,还是领会到了很多教授他的独特见解!...

糖宝lsh
2018/09/10
0
0
Python学习之面向对象高级编程

数据封装、继承和多态只是面向对象程序设计中最基础的3个概念。在Python中,面向对象还有很多高级特性,如:多重继承、定制类、元类等概念。 slots 作用:限制实例的属性。 Python允许在定义...

stone_zhu
2018/06/19
0
0
Python动态特性应对动态情况

Python有一些定制类的特殊方法,如、、,其中一些具有动态特性的方法可以用来很方便地处理某些动态状况。 Duck-typing When I see a bird that walks like a duck and swims like a duck and...

HeHa
2015/09/21
0
0
如何利用Python实现权限设置?有些人只怕连这个操作都没想到过!

一、私有化的实现 在Python中想定义一个类是比较简单的,比如要定义一个Person类,如下代码即可: 当然我们也可以给类添加相应的属性,比如Person的姓名,年龄,性别等,并且在new一个Perso...

Python新世界
2018/07/26
0
0
关于Python类属性与实例属性的讨论

标题名字有点长。 之所以想写这个文章是因为碰巧看到网上一篇关于Pyhon中类属性及实例属性区别的帖子。因为我之前也被这个问题困扰过,今天碰巧看到了这篇帖子,发现帖子的作者只是描述了现象...

_Zhao
2018/08/27
0
0

没有更多内容

加载失败,请刷新页面

加载更多

导出表格

https://blog.csdn.net/hhzzcc_/article/details/80419396

Js_Mei
28分钟前
0
0
Ubuntu中安装Elasticsearch

1.安装jre elasticsearch是使用java开发的搜索引擎,因此其运行依赖于java runtime environment,我们在这里不使用Oracel的官方jre,改为使用open-jre。 运行环境: ubuntu:18.04 jre:openj...

cloes
45分钟前
0
0
nginx rails 详细站点配置入门教程

Ruby on Rails 是一个用于开发数据库驱动的网络应用程序的完整框架。Rails基于MVC(模型- 视图- 控制器)设计模式。从视图中的Ajax应用,到控制器中的访问请求和反馈,到封装数据库的模型,R...

xiangyunyan
今天
4
0
Shiro

Shiro是Apache的一个开源框架,是一个权限管理的框架,实现用户认证、用户授权等。 只要有用户参与一般都要有权限管理,权限管理实现对用户访问系统的控制,按照安全规则或者安全策略控制用户...

嘿嘿嘿IT
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部