J'essaie de trouver comment je peux trouver la probabilité d'une main avec ce que serait la prochaine carte. Je ne sais pas comment vérifier la prochaine carte et obtenir la probabilité et je ne sais pas quoi faire pour l'écrire tous ensemble dans des méthodes séparées pour chaque type de main. Toute aide pour moi d'être capable de lire dans une carte à la main et de trouver la probabilité d'obtenir cette main serait grandement appréciée.Probabilité de poker en Python avec le fichier d'entrée
Écrivez un programme qui lit dans un fichier texte. Le nom sera fourni en tant que paramètre de ligne de commande. Chaque ligne vous donne une liste de 4 cartes en votre main actuelle. Après avoir lu dans le fichier, votre programme imprimera la probabilité de chaque type de main gagnante, où une main gagnante est donnée
import sys
#error message
if len (sys.argv) == 1:
print "Error"
exit()
file = sys.argv[1]
#counts and arrays
#count = 0
f = open(file)
f = f.read()
hand = f.splitlines()
arraynum = 0
def deck():
deck = []
suit = ['H', 'S', 'D', 'C']
number = ['A', '2', '3', '4', '5', '6', '7', '8', '9', '10', 'J', 'Q', 'K']
for s in suit:
for n in number:
deck.append(n+s)
return deck
def startHand(arraynum):
hand1 = str(hand[arraynum]).split(', ')
hand1.sort()
return hand1
def checkHand(deck,hand1):
for card in hand1:
for Card in deck:
if Card == card:
deck.remove(card)
return deck
def check1(deck, hand1):
count = 0
for Card in deck:
for i in hand1[0:-1]:
if i != Card:
count +=1
prob = count/48
print prob
print count
t1 = deck()
t2 = startHand(3)
t3 = checkHand(t1,t2)
t4 = check1(t2,t3)'
Le fichier d'entrée est: QS, JS, KS, 10S KS, 3C, 3S, QC 6D, 10D, AD, 7D
la sortie devrait ressembler à:
('Chance of Royal Flush: ', 0.020833333333333332)
('Chance of Straight Flush: ', 0.020833333333333332)
('Chance of Four of a Kind: ', 0.0)
('Chance of Full House: ', 0.0)
('Chance of Flush: ', 0.14583333333333334)
('Chance of Straight: ', 0.125)
('Chance of Three of a Kind: ', 0.0)
('Chance of Two Pair: ', 0.0)
('Chance of Pair: ', 0.25)
('Chance of High Card: ', 0.4375)
*************************************
('Chance of Royal Flush: ', 0.0)
('Chance of Straight Flush: ', 0.0)
('Chance of Four of a Kind: ', 0.0)
('Chance of Full House: ', 0.0)
('Chance of Flush: ', 0.0)
('Chance of Straight: ', 0.0)
('Chance of Three of a Kind: ', 0.041666666666666664)
('Chance of Two Pair: ', 0.125)
('Chance of Pair: ', 0.8333333333333334)
('Chance of High Card: ', 0.0)
*************************************
('Chance of Royal Flush: ', 0.0)
('Chance of Straight Flush: ', 0.0)
('Chance of Four of a Kind: ', 0.0)
('Chance of Full House: ', 0.0)
('Chance of Flush: ', 0.1875)
('Chance of Straight: ', 0.0)
('Chance of Three of a Kind: ', 0.0)
('Chance of Two Pair: ', 0.0)
('Chance of Pair: ', 0.25)
('Chance of High Card: ', 0.5625)
*************************************
Bienvenue dans StackOverflow. Veuillez lire et suivre les consignes de publication dans la documentation d'aide. [sur le sujet] (http://stackoverflow.com/help/on-topic) et [comment demander] (http://stackoverflow.com/help/how-to-ask) s'appliquent ici. StackOverflow n'est pas un service de codage ou de tutorat. – Prune