Я пытаюсь выяснить, как я могу найти вероятность руки с любой следующей картой. Я не знаю, как проверить следующую карточку и получить вероятность, а также не знаю, что делать, чтобы написать все вместе в отдельные методы для каждого вида рук. Любая помощь для меня, чтобы быть в состоянии прочитать в карточке в руке и найти вероятность получить эту руку, будет очень признательна.Вероятность покера в Python с входным файлом
Напишите программу, которая читает в текстовом файле. В качестве параметра командной строки имя будет предоставлено . Каждая строка дает вам список из 4-х карт в вашей текущей руке. После чтения файла, ваша программа будет печатать из вероятности каждого типа выигрыша руки, где дается выигрышная рука
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)'
Входной файл: QS, JS, KS, 10S KS, 3С, 3S, QC 6D, 10D, AD, 7D
вывод должен выглядеть следующим образом:
('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)
*************************************
Добро пожаловать в StackOverflow. Прочтите и следуйте инструкциям по отправке в справочной документации. [по теме] (http://stackoverflow.com/help/on-topic) и [как спросить] (http://stackoverflow.com/help/how-to-ask) применяются здесь. StackOverflow не является кодовым или учебным сервисом. – Prune