Bom o que acontece é um comportamento padrão do python, ao separar elementos por vírgula ele cria uma tupla, logo o que seu IF faz é criar uma tupla com os seguintes valores (False, "Douglas", "Nico").
Tente fazer algo assim e você observará o mesmo comportamento,
usuario = input("Digite o seu nome de usuário do sistema: ")
tupla = usuario == "Flavio", "Douglas", "Nico"
if(tupla):
print("Seja bem-vindo, ", usuario, end=("!\n"))
else:
print("Usuario não identificado!")
Peça para ele printar tupla e você verá uma saída como essa,
(False, "Douglas", "Nico")
Outra caractística do Python é que se algo não é False, bom então ele é verdadeiro isso vale para qualquer inteiro, ponto flutuante, array, tupla, strings (exceto o valor 0, que é o valor False padrão da programação) então se você tá fazendo if (tupla) ele vai avaliar como verdadeiro e não entrar no else.
Portanto uma solução em que o código vai se comportar você espera é essa aqui,
usuario = input("Digite o seu nome de usuário do sistema: ")
if(usuario == "Flavio" or usuario == "Douglas" or usuario == "Nico"):
print("Seja bem-vindo, ", usuario, end=("!\n"))
else:
print("Usuario não identificado!")
ou até mesmo,
usuario = input("Digite o seu nome de usuário do sistema: ")
if(usuario == ("Flavio" or "Douglas" or "Nico")):
print("Seja bem-vindo, ", usuario, end=("!\n"))
else:
print("Usuario não identificado!")
A título de curiosidade você pode fazer as avaliações abaixo e obersavar como o Python vai se comportar,
if((False, 10, "Hello wolrd")):
print("Isso é true!")
else:
print("Isso é false!")
if("Hello wolrd"):
print("Isso é true!")
else:
print("Isso é false!")
if(10):
print("Isso é true!")
else:
print("Isso é false!")
if((False)):
print("Isso é true!")
else:
print("Isso é false!")
if(0):
print("Isso é true!")
else:
print("Isso é false!")
Tenha um Bom dia Marcelo!!! E Bons estudos, siga firme!!! ;)))