class Sobrecarga:
val = 0
def __init__(self, val):
self.val = val
def __str__(self):
return '{}'.format(self.val)
def __add__(self, other):
if other == '+':
self.val += 1
else:
return self.val + other
a = Sobrecarga(1)
print(a) # saida: 1
a+'+' # gambi :P
print(a) # saida: 2
a+1 # resultado da operação não é armazenado
print(a) # saida: 2
print(a+1) # saida: 3
Y2xhc3MgU29icmVjYXJnYToKICAgIHZhbCA9IDAKCiAgICBkZWYgX19pbml0X18oc2VsZiwgdmFsKToKICAgICAgICBzZWxmLnZhbCA9IHZhbAoKICAgIGRlZiBfX3N0cl9fKHNlbGYpOgogICAgICAgIHJldHVybiAne30nLmZvcm1hdChzZWxmLnZhbCkKCiAgICBkZWYgX19hZGRfXyhzZWxmLCBvdGhlcik6CiAgICAgICAgaWYgb3RoZXIgPT0gJysnOgogICAgICAgICAgICBzZWxmLnZhbCArPSAxCiAgICAgICAgZWxzZToKICAgICAgICAgICAgcmV0dXJuIHNlbGYudmFsICsgb3RoZXIKCgphID0gU29icmVjYXJnYSgxKQpwcmludChhKSAgICAjIHNhaWRhOiAxCmErJysnICAgICAgICMgZ2FtYmkgOlAKcHJpbnQoYSkgICAgIyBzYWlkYTogMgphKzEgICAgICAgICAjIHJlc3VsdGFkbyBkYSBvcGVyYcOnw6NvIG7Do28gw6kgYXJtYXplbmFkbwpwcmludChhKSAgICAjIHNhaWRhOiAyCnByaW50KGErMSkgICMgc2FpZGE6IDMK