Nein, was Sie wollen, kann nur mit Methoden in Python erreicht werden. Es ist nicht wie in C++, wo man "Nicht-Mitglied" -Methoden außerhalb der Klasse definieren kann (ich bin mir nicht sicher, ob das der Name für diese ist, aber ich hoffe du weißt, was ich meine).
auch Pythons ganze Zahlen (aber auch schwimmt, Strings, etc.) unterstützt keine neue Attribute/Methoden so dass der einzige Weg, dies durch tatsächlich zu erreichen ist die Klasse Subklassen oder Erstellen eine neue Klasse:
class MyClass(object): # a custom class
def __init__(self, val):
self.val = val
def x(self, other):
return self.__class__(self.val + other.val)
def __repr__(self):
return '{self.__class__.__name__}({self.val})'.format(self=self)
>>> n1 = MyClass(1)
>>> n2 = MyClass(2)
>>> n1.x(n2)
MyClass(3)
Sie fragen zu können, eine neue ** Methode hinzuzufügen ** zu dem eingebauten in 'int' Typ. Python unterstützt das nicht. – khelwood