Pour une raison quelconque cette fonction me confondre:Comment "et" et "ou" fonctionnent lorsqu'ils sont combinés en une seule instruction?
def protocol(port):
return port == "443" and "https://" or "http://"
quelqu'un peut-il expliquer l'ordre de ce qui se passe dans les coulisses pour faire ce travail comme il le fait.
je l'ai compris comme cela jusqu'à ce que je l'ai essayé:
Soit A)
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://"
Est-ce une sorte de cas particulier en Python, ou suis J'ai complètement mal compris comment fonctionnent les énoncés?
@Responders, voir mon jour 1 minute plus tard. Pardon. – orokusaki
Rappelez-vous simplement que les instructions 'et' et 'or' renvoient la dernière expression à évaluer. :) –