fork download
  1. from operator import add, sub
  2. def a_plus_abs_b(a, b):
  3. """Return a+abs(b), but without calling abs."""
  4. if ( b < 0 ) :
  5. op = add(a, (b * -1)) #можно конечно сделать тут sub без аргументов, но неинтересно, хочу пофиксить
  6. else:
  7. op = add
  8. return op (a,b) #зараюотало с двумя аргами только когда сделал тупо add в 7 строке но крашится при негативных значениях b. Если убрать (a,b) то работает при негативных значениях
  9. # return op - вот если так сделать - не будет крашится с негативными
  10.  
  11. print (a_plus_abs_b(2,4))
  12. print (a_plus_abs_b(2,-4))
  13. print("Success!") #ага, хуй там.
Runtime error #stdin #stdout #stderr 0.04s 9356KB
stdin
Standard input is empty
stdout
6
stderr
Traceback (most recent call last):
  File "./prog.py", line 12, in <module>
  File "./prog.py", line 8, in a_plus_abs_b
TypeError: 'int' object is not callable