Eu preciso somar todos os números da lista. Se 0 ocorrer, comece a subtrair, até outro 0, comece a adicionar.
Por exemplo:
[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
Isto é o que eu tentei:
sss = 0
for num in numbers:
if 0 == num:
sss = -num
else:
sss += num
return sss
if i == 0:
você pode apenas usarsign = not sign
. Veja repl.it/repls/RigidCrazyDeletionssum
função embutida !! Eu suponho que é por isso OP usadosss
em vez desum
Outra variação com
operator
módulo e negação bit a bit~
:fonte
fonte