python - 为python中的变量分配一个附加类(显示R中的等价物)
问题描述
在R中,您可以执行以下操作:
x <- 3
cl <- class(x)
class(x) <- c("abc",cl)
所以变量'x'将是一个整数并且属于用户定义的类'abc'。
我想在Python中做类似的事情。我的变量“x”应该被视为整数,并且还应该具有名为“abc”的用户定义类的属性。
解决方案
是的,Python 支持多重继承:
class indigestion():
def burp(self):
return " ".join("burp" for _ in range(int(self)))
class int_with_indigestion(int, indigestion):
pass
class float_with_indigestion(float, indigestion):
pass
n = int_with_indigestion(13)
print(n ** 2)
print(n.burp())
f = float_with_indigestion(5.3)
print(f ** 2)
print(f.burp())
用法
> python3 test.py
169
burp burp burp burp burp burp burp burp burp burp burp burp burp
28.09
burp burp burp burp burp
>
推荐阅读
- python - python django global-ish 类实例
- metadata - DCMI,RDF - 基数和出现
- javascript - 类型错误:uuidv4 不是函数
- javascript - 如何在 Chart.js 3 中更改时间序列图表上的标签和网格线位置?
- c# - 在 .Net 中序列化和反序列化 C# 用户定义的类
- python - discord.py 如何在 API 请求中用 %20 替换空格
- python - 在 for 循环中将一维数组转换为二维
- python - 如何捕获从某个字符串开始并从某行结束然后存储到列表中的字符串
- arrays - 是否可以实现修改声明为不可分配的数组的子例程?
- mysql - 将 phpmyadmin 转移到另一台电脑而不导出