Como "e" e "ou" funcionam quando combinados em uma declaração?
Por alguma razão, essa função me confundiu:
def protocol(port):
return port == "443" and "https://" or "http://"
Alguém pode explicar a ordem do que está acontecendo nos bastidores para que isso funcione da maneira que funciona.
Entendi isso até tentar:
Qualquer um)
def protocol(port):
if port == "443":
if bool("https://"):
return True
elif bool("http://"):
return True
return False
Ou B)
def protocol(port):
if port == "443":
return True + "https://"
else:
return True + "http://"
Isso é algum tipo de caso especial em Python, ou estou completamente entendendo mal como as instruções funcionam?