Par pur hasard, il se trouve que j'ai dû brute-forcer les probas du poker cet aprem, je te mets donc le code que j'ai utilisé pour trouver quelle combinaison il y a dans la main (un peu adapté à ton problème) :
Si il y a des choses que tu ne comprends pas, ou s'il y a des erreurs, n'hésite pas à demander plus d'infos.
def quinte(hand):
return hand[0]==hand[4]
def carre(hand):
return hand[0]==hand[3] or hand[1]==hand[4]
def full(hand):
if(hand[0]==hand[2]):
return hand[3]==hand[4]
elif(hand[2]==hand[4]):
return hand[0]==hand[1]
return False
def brelan(hand):
return hand[0]==hand[2] or hand[1]==hand[3] or hand[2]==hand[4]
def paire(hand):
cpt = 0
# pas très pythonesque tout ça
for i in range(0,len(hand)-1):
if(hand[i]==hand[i+1]):
cpt+=1
return cpt
def suite(hand):
return (hand[4]-hand[0]) == 4
def detect_hands(hand):
if(quinte(hand)):
print("quinte")
elif(carre(hand)):
print("carré")
# pas beau, test du brelan x2
elif(full(hand)):
print("full")
elif(brelan(hand)):
print("brelan")
elif(paire(hand)!=0):
print(str(paire(hand))+" paire(s)")
elif(suite(hand)):
print("suite")
else:
print("rien")