Python属性未设置
发布时间:2020-11-17 14:31:50 所属栏目:Python 来源:互联网
导读:这是代码: def Property(func): return property(**func())class A: def __init__(self, name): self._name = name @Property def name(): doc = As name de
这是代码: def Property(func): return property(**func()) class A: def __init__(self,name): self._name = name @Property def name(): doc = 'A''s name' def fget(self): return self._name def fset(self,val): self._name = val fdel = None print locals() return locals() a = A('John') print a.name print a._name a.name = 'Bob' print a.name print a._name 以上产生以下输出: {'doc': 'As name','fset': <function fset at 0x10b68e578>,'fdel': None,'fget': <function fget at 0x10b68ec08>} John John Bob John 代码取from here. 问题:怎么了?它应该是简单的东西,但我找不到它. 注意:我需要属性来进行复杂的获取/设置,而不是简单地隐藏属性. 提前致谢. 解决方法documentation forproperty() 声明:
您的类不是新样式的类(您没有从对象继承).将类声明更改为: class A(object): ... 它应该按预期工作. (编辑:十堰站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- Django迁移是否应该在源代码控制中生效?
- python通过yield实现数组全排列的方法
- python – 如何动态调用类中的方法使用方法名分配给变量
- python – 芹菜工作者无法连接到docker实例上的redis
- python – paramiko没有现有的会话异常
- python – 为Matplotlib imshow()手动定义的轴标签
- python – 在HTML页面快速算法中查找单词
- python – ctypes错误找不到AttributeError符号,OS X 10.7.
- python – igraph:为什么add_edge函数如此缓慢地对add_edg
- 使用Python全局变量的动态类的最佳方法()
推荐文章
站长推荐
- python – TypeError:JSON对象必须是str,而不是
- python – 根据上一个和下一个元素将元素插入到列
- python – TensorFlow:SKCompat折旧警告
- Django 1.10中有哪些django.core.context_proces
- python – 为Django应用程序中的用户添加动作的日
- python – Django 1.7 makemigrations – ValueE
- python – 有人可以解释为什么这会修复我的递归错
- Python – NLP – 将iter(iter(树))转换为列表(树
- python相当于scala分区
- 关于exponents和int的Python问题
热点阅读