提问人:rkg125 提问时间:6/12/2023 最后编辑:Chris_Randsrkg125 更新时间:6/12/2023 访问量:32
我可以在python中为set “difference”方法创建别名“minus”吗
can I create the alias "minus" for the set "difference" method in python
问:
由于 minus 在集合论书籍中经常用于表示差分,因此我尝试在 Python 中将 difference 别名为 minus
减号 = 差值
但我得到了
NameError:未定义名称“difference”
有没有办法做我想做的事?
= 适用于别名函数名称,但显然不适用于方法
答:
0赞
Nick ODell
6/12/2023
#1
您可以创建 set 的自定义子类,并使用调用 set 方法的减号方法。__sub__
例:
class SetWithDifference(set):
def minus(self, other):
return self.__sub__(other)
a = SetWithDifference({'a', 'b', 'c'})
b = SetWithDifference({'a', 'b'})
print(a.minus(b))
评论
a - b
a
b
minus
a - b
difference
反正不是一个全球名称;它是类的一个属性。 如果可以向 添加新属性,则可以将 ,但是set
set
set.minus = set.difference