Necesito sumar todos los números en la lista. Si ocurre 0, comience a restar, hasta otro 0, comience a agregar.
Por ejemplo:
[1, 2, 0, 3, 0, 4] -> 1 + 2 - 3 + 4 = 4
[0, 2, 1, 0, 1, 0, 2] -> -2 - 1 + 1 - 2 = -4
[1, 2] -> 1 + 2 = 3
[4, 0, 2, 3] = 4 - 2 - 3 = -1
Esto es lo que he intentado:
sss = 0
for num in numbers:
if 0 == num:
sss = -num
else:
sss += num
return sss
if i == 0:
, solo puede usarsign = not sign
. Ver repl.it/repls/RigidCrazyDeletionssum
función incorporada ! Supongo que es por eso que OP utilizó ensss
lugar desum
Otra variación con
operator
módulo y negación bit a bit~
:fuente
fuente