Python中文
首页
教程
问答
标签
搜索
登录
注册
把自己放在别的地方有多危险?
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>假设我有一个类,它有一些子类。</p> <p>我可以实例化类。然后我可以将其<code>__class__</code>属性设置为其中一个子类。在一个活动对象上,我有效地将类类型更改为其子类的类型。我可以在它上调用调用那些方法的子类版本的方法。</p> <p>那么,这么做有多危险?看起来很奇怪,但是做这样的事是不是有错?尽管可以在运行时更改类型,但这是否是语言中应该完全避免的特性?为什么或者为什么不?</p> <p>(根据回答,我将发布一个关于我想做什么以及是否有更好的选择的更具体的问题)。</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>如果您有一个长时间运行的应用程序,并且您需要用同一类的新版本替换某个对象的旧版本而不丢失数据(例如,在某些<code>reload(mymodule)</code>之后并且不重新加载未更改的模块),则分配<code>__class__</code>属性非常有用。另一个例子是如果您实现持久性-类似于<code>pickle.load</code>。</p> <p>不鼓励使用所有其他用法,特别是如果您可以在启动应用程序之前编写完整的代码。</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
jupyter运行一个旧的pytorch版本
10 回答
Jupyter运行不同版本的卸载库?
10 回答
Jupyter运行指定的键盘快捷键
6 回答
Jupyter通过.local文件“逃逸”virtualenv。我该如何缓解这种情况?
3 回答
Jupyter重新加载自定义样式
7 回答
Jupyter错误:“没有名为Jupyter_core.paths的模块”
2 回答
jupyter错误:无法在随机林中将决策树视为png
9 回答
Jupyter错误'内核似乎已经死亡,它将自动重新启动'为一个给定的代码块
1 回答
Jupyter错误地用阿拉伯语和字母数字元素显示Python列表
2 回答
Jupyter隐藏数据帧索引,但保留原始样式
1 回答
Jupyter集线器:启动器中出现致命错误。。。系统找不到指定的文件
10 回答
Jupyther中相同值的相同哈希,但导出到Bigquery时不相同
6 回答
Jupy上Python的读/写访问问题
8 回答
jupy上没有模块cv
3 回答
Jupy上的排序错误
2 回答
Jupy中bqplot图形的紧凑布局
1 回答
Jupy中matplotlib plot的连续更新
7 回答
Jupy中Numpy函数的文档
6 回答
Jupy中Pandas的自动完成问题
3 回答
jupy中Qt后端的Matplotlib动画
10 回答