No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Operador lógico not

17/37
Recursos

Aportes 57

Preguntas 8

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

o inicia sesión.

print(not True)
print(not False)

# not 
print('NOT AND')
print('True and True =>', not (True and True)) # False
print('True and False =>', not (True and False)) # True
print('False and True =>', not (False and True)) # True
print('False and False =>', not (False and False)) # True

stock = input('Ingrese el numero de stock =>')
stock = int(stock)

print(not (stock >= 100 and stock <= 1000))

Algoritmo típico. Me ayudó a entenderlo mejor. Si eres menor de 18, no puedes votar.

try:
    age = int(input('¿Edad? '))
    puede_votar = not age < 18
    print('¿Puede votar?: ', puede_votar)
except:
    print('Escribe tu edad en número entero')

El operador Not niega un condición y cambia su valor arrojando el booleano inverso
not True = False
not False = True

print( not True)
print( not False)

print('NOT AND')
print('not True and True =>', not (True and True))
print('not True and False =>', not (True and False))
print('not False and True =>', not (False and True))
print('not False and False =>', not (False and False))

stock = input('Ingrese el número de stock => ')
stock = int(stock)

print(not (stock >= 100 and stock <= 1000))

Habría que ver en que momento del desarrollo de código puede ser útil utilizar la negación de operaciones lógicas.

**Especiales
**

  • Existen otros operadores especiales que veremos y utilizaremos comúnmente en bucles o para comprobar si una variable es exactamente igual a otra o no, o por ejemplo para saber si un elemento se encuentra dentro de otros, etc…

Un aporte para la clase anterior donde se compara el rol en una empresa y se determina si es un rol requerido para poder ingresar.

role = input("Ingrese su rol en la empresa: ").capitalize()
ar_t = role == “Admin” or role == “Owner”

if ar_t == True:
print(“Acceso concedido.”)

else:
print(“Acceso denegado.”)
quit()

El operador lógico “not” (no) se utiliza para negar o invertir el valor de una condición. Su función es simple: si una condición es verdadera, “not” la convierte en falsa, y si una condición es falsa, “not” la convierte en verdadera.

Ha faltado el operador XOR que en python es “^”

True ^ True #resultado->False
True ^ False #resultado->True
False ^ True #resultado->True
False ^ False #resultado->False
*****Logical operator: "NOT OR"*****

not (True or True) = False
not (True or False) = False
not (False or True) = False
not (False or False) = True
# negación de operaciones
print('NOT AND')
print( " not True and True  =>", not (True and True))
print( " not True and False =>", not(True and False))
print( " not False and True  =>", not(False and True))
print( " not False and False  =>", not(False and False))

#Ejemplo practico
stock = input ('Ingrese el numero de stock:')
stock = int(stock)
print(not(stock  >= 100 and stock  <= 1000))


Buena explicación del operador lógico not

🧠**Operadores lógicos:**

12_not.py
print(not True) #niega



El operador NOT invierte el resultado booleano, es algo así como cuando cierras una llave de agua y sale el agua, y cuando la quieres abrir se cierra.

print((1 not in [2,3,4,5]))
print((1 not in [1,2,3,4,5]))
print(not True)
print(not False)
print((not 1 == 1))
print((not 1 != 1))
print(not True)
print(not False)

# and
print('NOT AND')
print('True and True => ', not(True and True))
print('True and True => ', not(True and False))
print('True and True => ', not(False and True))
print('True and True => ', not(False and False))

stock = input('ingrese el numero de stock =>' )
stock = int(stock)
print(not(stock >= 100 and stock <= 1000))

Aca les dejo

from re import X

def  my_gen():
    #elemplo de generadores 
    print("hola mundo")
    n = 0
    yield n

    print("hello heavenl")
    n = 1
    yield n

    print("hello helli")
    n = 1
    yield n

a = my_gen()
print(next(a))
print(next(a))
print(next(a))
print(next(a))
# todo este codigo es lo mismo que un iterador pero es mucho mas fasil
# de copilar 

# generadores expression
my_list = [0,1,2,3,4,5,6,7,8,9]

my_second_list = [X*2 for x in my_list]
my_second_gen = (x*2 for x in my_list)

#ventajas de usar generadores, es mucho mas facil 
#de escrivir que un interador y tine todas las ventajas de los 
#iteradores (Horrar memoria, recursos, tiempo y puedo 
# cuardar secuencias infinitas )
print(not True) print(not False) \# and print('NOT AND') print('True and True => ', not(True and True)) print('True and True => ', not(True and False)) print('True and True => ', not(False and True)) print('True and True => ', not(False and False)) stock = input('ingrese el numero de stock =>' ) stock = int(stock) print(not(stock >= 100 and stock <= 1000))
Un aporte para la clase anterior donde se compara el rol en una empresa y se determina si es un rol requerido para poder ingresar. role = input("Ingrese su rol en la empresa: ").capitalize() ar\_t = role == "Admin" or role == "Owner" if ar\_t == True: print("Acceso concedido.") else: print("Acceso denegado.") quit()

Algoritmo de negacion NOT aplicado a una fiesta solo para menores de edad.

edad = int(input("Cual es tu edad we ? "))
if not (edad >= 18):
   print(" Bienvenido a mi fiesta ")
else:
  print(" No estas invitado :() ")

En este ejerccio altero la logica natural del programa con el uso de NOT


#Boletin de noticias por correo algoritmo con NOT 

suscripcion  = int(input("Deseas recibir las noticias si(1) no(0)"))

if not suscripcion:
  print("Te haz suscrito con exito al boletin de noticias")
else:
  print("No haz podido suscribirte")
<code> 
# OPERADORES LOGICOS

print("#" * 100)
print("#" * 33, " " * 6, "OPERADORES LOGICOS", " " * 6, "#" * 33)
print("#" * 100)

# AND

print(" " * 10, '"AND"')
print(" " * 10, '*****')
print("")

print(" " * 3, 'True and True =>', True and True)
print("")
print(" " * 3, 'rue and False =>', True and False)
print("")
print(" " * 3, 'False and True =>', False and True)
print("")
print(" " * 3, 'False and False =>', False and False)
print("")

print(" " * 3, '"Ejemplos de uso"')
print(" " * 3, '*****************')
print("")

print(" " * 3, '10 > 5 and 5 < 10 =>', True and True)
print("")
print(" " * 3, '10 > 5 and 5 > 10 =>', True and False)
print("")
print(" " * 3, '10 < 5 and 5 < 10 =>', False and True)
print("")
print(" " * 3, '10 < 5 and 5 > 10 =>', False and False)
print("")

'''
stock = input('Ingrese el numero de estock: =>')
stock = int(stock)
print(" " * 3, 'Estock: =>', stock >= 100 and stock <= 1000)
'''

print("")
print("")
print("#" * 100)

# OR

print(" " * 10, '"OR"')
print(" " * 10, '****')
print("")

print(" " * 3, 'True or True =>', True or True)
print("")
print(" " * 3, 'rue or False =>', True or False)
print("")
print(" " * 3, 'False or True =>', False or True)
print("")
print(" " * 3, 'False or False =>', False or False)
print("")

print(" " * 3, '"Ejemplos de uso"')
print(" " * 3, '*****************')
print("")

print(" " * 3, '10 > 5 or 5 < 10 =>', True or True)
print("")
print(" " * 3, '10 > 5 or 5 > 10 =>', True or False)
print("")
print(" " * 3, '10 < 5 or 5 < 10 =>', False or True)
print("")
print(" " * 3, '10 < 5 or 5 > 10 =>', False or False)
print("")

'''
role = input('Digita tu rol en minuscula: =>')
print(" " * 3, 'Role =>', role == 'admin' or role == 'seller')
'''

print("")

print("#" * 100)

# NOT

print(" " * 10, '"NOT"')
print(" " * 10, '*****')
print("")

print(" " * 3, 'not True =>', not True)
print("")
print(" " * 3, 'not False =>', not False)
print("")

print(" " * 3, '"Ejemplos de uso"')
print(" " * 3, '*****************')
print("")
 
print(" " * 3, 'not (True and True) =>', not (True and True))
print("")
print(" " * 3, 'not (rue and False) =>', not (True and False))
print("")
print(" " * 3, 'not (False and True) =>', not (False and True))
print("")
print(" " * 3, 'not (False and False) =>', not (False and False))
print("")

print(" " * 3, 'not (True or True) =>', not (True or True))
print("")
print(" " * 3, 'not (rue or False) =>', not (True or False))
print("")
print(" " * 3, 'not (False or True) =>', not (False or True))
print("")
print(" " * 3, 'not (False or False) =>', not (False or False))
print("")



print("#" * 100)
print(not True, "<= not true")
print(not False, "<= not false")
print(not True)
print(not False)

# and negación de todas las combinaciones de operaciones

print('NOT AND')
print('not True and True =>', not (True and True))
print('not True and False =>', not (True and False))
print('not False and True =>', not (False and True))
print('not False and False =>', not (False and False))


#or negación de todas las combinaciones de operaciones

print('NOT OR')
print('True or True =>', not (True or True))
print('True or False =>', not (True or False))
print('False or True =>', not (False or True))
print('False or False =>', not (False or False))

stock = input('Ingrese el numero de stock => ')
stock = int(stock)

print(not (stock >= 100 and stock <= 1000))

Pequeño resumen de la clase

print(not True)
print(not False)

# not
print('NOT AND')
print('not True and True =>', not (True and True)) #False
print('not True and False =>',not (True and False)) #True
print('not False and True =>', not (False and True)) #True
print('not False and False =>',not (False and False)) #True


stock = input('Ingrese el número de stock => ')
stock = int(stock)

print(not (stock >= 100 and stock <= 1000))

espero que mas adelante podamos ver los demas operadores y como se aplican en la vida real

si ingresan estas líneas de código en la terminal deberían obtener True, independientemente del valor de A y B

A = True
B = True
not(A and B) == not(A) or not(B)
not(A or B) == not(A) and not(B)

o sea que en el int de stock si pongo un numero par me tira True si es numero alto imper me tira False

NOT
not True = False
not False = True

True or True = True
True or False = True
False or True = True
False or False = False

AND

True and True = True
True and False = False
False and True = False
False and False = False

Realmente lo que se quiso decir fue lo siguiente:

# AND y NOT
print('NOT AND')
print('NOT (True AND True) --> ', not(True and True))
print('NOT (True AND False) --> ', not(True and False))
print('NOT (False AND True) --> ', not(False and True))
print('NOT (False AND False) --> ', not(False and False))

ya que al usar not True AND True, se resolvería de la siguiente manera:

not  True AND True
False AND True
False
class18 = 'No entendi'
print(not(class18 == 'No entendi'))

print (not True)
print (not False)

print (“NOT And”)
print (“True and True =>”, not (True and True ))
print (“True and False =>”, not (True and False ))
print (“False and True =>”, not (False and True ))
print (“False and False =>”, not (False and False ))

stock = input(" Ingrese el numero de stock")
stock = int(stock)
print(not(stock>=100 and stock<=1000))

# Operador not
print(not True) #False
print(not False) #True
print("not True and True", not(True and True)) #False
print("not True and False", not(True and False)) #True
print("not False and True", not(False and True)) #True
print("not False and False", not(False and False)) #True

stock = int(input("Ingrese el numero de stock =>"))

print(not (stock >= 100 and stock <= 1000))
print(not True)
print(not False)

# and
print('NOT AND ')
print('not True and True =>', not(True and True)) #Uno de los dos debe ser falso para true
print('not True and False =>', not(True and False)) #niega toda una operación
print('not False and True =>', not(False and True))
print('not False and False =>', not(False and False))

stock = int(input('Ingrese el numero de stock => '))
print(not (stock >= 100 and stock <= 1000))

Buena explicación del operador lógico not

Gran aporte ❤️

En Python, los operadores lógicos AND, OR y NOT se utilizan para evaluar expresiones booleanas y producir un resultado booleano. El operador AND retorna True si ambos operandos son verdaderos, el operador OR retorna True si al menos uno de los operandos es verdadero, y el operador NOT invierte el valor booleano del operando.

Mi aporte en notion

Interesante todo el tema de compuertas logicas y algebra de boole

Mi Codiguito 😉

# NOT
print("\n" + "-" * 10 + " NOT " + "-" * 10 + "\n")
print (not True)
print (not False)

# NOT AND
print("\n" + "-" * 10 + " NOT AND " + "-" * 10 + "\n")

print("True and True =>", not (True and True))
print("True and False =>", not(True and False))
print("False and True =>", not(False and True))
print("False and False =>", not(False and False))


stock = input('Engrese el numero de stock => ')
stock = int(stock)

print(not (stock >= 100 and stock <= 1000))

NOT

print(’#’*5,’ NOT ‘, ‘#’*5)
print(’’)

print(not True)
print(not False)
print(’’)

print(‘NOT AND’)

print(‘True and True =>’, not (True and True)) # False
print(‘True and False =>’, not (True and False)) # True
print(‘False and True =>’, not (False and True)) # True
print(‘False and False =>’, not (False and False)) # True

stock = input(‘Ingrese el numero de stock =>’)
stock = int(stock)

print(not (stock >= 100 and stock <= 1000))

print(not True)
print(not False)

# and
print('NOT AND')
print('not True and True =>', not (True and True))
print('not True and false =>', not (True and False))
print('not False and True =>', not (False and True))
print('not False and False =>', not (False and False))

stock = input('Ingrese el número de stock => ')
stock = int(stock)

print(not (stock >=100 and stock <= 1000))
print(not True)
print(not False)

# and
print(' notand')
print(' not True and True =>',not (True and True))
print('not True and False =>',not (True and False))
print('not False and True =>',not (False and True))
print('not False and False =>',not (False and False))

stock = input('Ingrese el numero de stock => ')
stock = int(stock)

print(not (stock >= 100 and stock <= 1000))

Operadores de identidad en Python
|

is
is not

|
Operadores de membresía de Python
|

in
not in
""" not """
print("not True =", not True)
print("not False =", not False)

# Examples
print("-" * 35)
print("Examples")
print("13 <= 18 and not (34 > 18): ", 13 <= 18 and not (34 > 18))
print("not (17 <= 18) and 12 > 23: ", not (17 <= 18) and 12 > 23)
print("2 == pez or not (2 + 2 == 4): ", 2 == 'pez' or not (2 + 2 == 4))
print("not (2 + 2 == pez) or 0 ** 0 == 1: ", not (2 + 2 == 'pez') or 0**0 == 1)
print(not True)
print(not False)

#* and
print('NOT AND')
print('NOT True and True => ', not(True and True))
print('NOT True and True => ', not(True and False))
print('NOT True and True => ', not(False and True))
print('NOT True and True => ', not(False and False))

stock = int(input('ingrese el numero de stock =>' ))
print(not(stock >= 100 and stock <= 1000))