ich habe vermutlich zu schnell auf Java gewechselt, leider weiß ich nicht ob folgender Fall idiomatisches Python ist:
Code: Alles auswählen
class A:
def __init__(self, attribute=1):
self._attribute = attribute
@property
def attribute(self):
return self._attribute
@attribute.setter
def attribute(self, value):
self._attribute = value
def main():
a = A()
a.attribute = (5, 10)
if __name__ == '__main__':
main()
Hier wird ein timeout vom typ int gesetzt, das wird an späterer Stelle für requests verwendet, welches sowohl ein tupel als auch ein float akzeptiert. Das Modul implementiert ja schon ein property, nur leider macht das noch nichts besonderes. Wäre das evtl. schon ein Fall in dem man das Property aufbohren und hier den Typ vorher prüfen und dann entsprechend setzen könnte?