if myval == 0:
nyval=1
if myval == 1:
nyval=0
Czy istnieje lepszy sposób na przełączenie w python, jak nyvalue = not myval?python jak "negować" wartość: jeśli true return false, jeśli false return true
if myval == 0:
nyval=1
if myval == 1:
nyval=0
Czy istnieje lepszy sposób na przełączenie w python, jak nyvalue = not myval?python jak "negować" wartość: jeśli true return false, jeśli false return true
Użyj not
boolean operator:
nyval = not myval
not
zwraca logiczną wartość (True
lub False
):
>>> not 1
False
>>> not 0
True
Jeśli trzeba mieć całkowitą, wrzucił je z powrotem:
nyval = int(not myval)
Jednak rodzaj pyton bool
to podklasa int
, więc nie mogą być potrzebne:
>>> int(not 0)
1
>>> int(not 1)
0
>>> not 0 == 1
True
>>> not 1 == 0
True
pythonowa not
to logiczna operatora, który dostaje przeciwieństwem wartości:
>>> myval = 0
>>> nyvalue = not myval
>>> nyvalue
True
>>> myval = 1
>>> nyvalue = not myval
>>> nyvalue
False
i True == 1
i False == 0
(jeśli trzeba go przekonwertować na liczbę całkowitą, można użyć int()
)
Zastosowanie not
, dla przykład:
return not myval