Pokerseite, auf der Sie online spielen können ist die größte in der Nachbarschaft. Es gibt auch viele verwandte Support-Tools.
Wie oben erwähnt, gibt es viele Support-Tools, und im Grunde können Sie die Bilanzberechnung dem Tool überlassen.
Die Grand Tour, die ich neulich spielen konnte, schien jedoch nicht von Holdem Manager 3 berechnet zu werden (siehe Foto unten).
Ich denke, es wird bald hinzugefügt.
Übrigens ist die aktuelle Situation so flach (es tut mir leid, dass es schwer zu verstehen ist, weil ich in der Zwischenzeit an einem anderen Turnier teilgenommen habe).
Klicken Sie hier für Github (https://github.com/na-sudo/pokerstarts_analyze)
git clone https://github.com/na-sudo/pokerstarts_analyze.git
Benötigt numpy. Die Testumgebung ist Python 3.8.5.
grand_tour.py
import os,glob,sys
import json
import numpy as np
user = 'username'
srcdir = [
'path to hand history1',
'path to hand history2'
]
def make_pathlist(list_):
li = []
for path in list_:
li += glob.glob(os.path.join(path, '**', '*Varied.txt'), recursive=True)
return sorted(li)
def getNearestValue(list, num):
"""
https://qiita.com/icchi_h/items/fc0df3abb02b51f81657
Überblick:Eine Funktion, die den Wert zurückgibt, der einem Wert aus der Liste am nächsten kommt
@param list:Datenarray
@param num:Zielwert
@return Der Wert, der dem Zielwert am nächsten kommt
"""
#Berechnen Sie die Differenz zwischen dem Listenelement und dem Zielwert und erhalten Sie den Index des Mindestwerts
idx = np.abs(np.asarray(list) - num).argmin()
return list[idx]
user_prize = user + ' wins $'
user_win = user + ' wins the tournament'
user_lose = user + ' finished the tournament'
pathlist = make_pathlist(srcdir)
game = [0]*6
debug = [0]*6
debug_diff = 0
cost = 0
prize = 0
buyin_list = [1, 2, 5, 12, 25, 60]
completed = 0
for path in pathlist:
with open(path, 'r', encoding='utf-8')as f:
txt = f.read().split('\n')
buyin = 100
for line in txt[2:6]:
for word in line.split(' ')[::-1]:
if '$' in word:
buyin = min(buyin, float(word.replace('$','')))
break
buyin = getNearestValue(buyin_list, buyin/0.9)
index = buyin_list.index(buyin)
game[index] += 1
cost += buyin
for line in txt:
if user_prize in line:
prize += float(line.split(' ')[2].replace('$', ''))
elif user_win in line:
if buyin!=len(buyin_list):
cost -= buyin_list[index+1]
else:
completed += 1
elif user_lose in line:
pass
else:
pass
#print(game, cost, buyin)
#print(game, cost, prize, completed)
print('net prize :', round(prize - cost, 3))
Bitte kopieren und verwenden
Öffnen Sie grand_tour.py mit einem Editor und geben Sie Ihren Pfad in user oder srcdir ein und führen Sie ihn aus. Da es rekursiv sucht, ist es in Ordnung, wenn Sie das übergeordnete Verzeichnis angeben.
user = 'username'← Meine Sterne ID
srcdir = [
'path to hand history1',← Ort in der Pokerstars-App festgelegt
'path to hand history2'← Wenn Sie HM3 usw. verwenden, löschen Sie es bitte, wenn Sie diesen Pfad nicht verwenden.
]
Es scheint unten auf der offiziellen Seite zu sein.
C:\Users\YourUsername\AppData\Local\PokerStars\HandHistory\
Das Ergebnis sieht so aus
& python grand_tour.py
net prize : 22.54
Ich bin wie ein "$ 22.54" plus! Normalerweise verliere ich bei 5nlz, daher kann die Grand Tour köstlich sein!
Übrigens, wenn Sie in Zeile 68 (zweite Zeile von unten) einen Kommentar abgeben, werden Details angezeigt.
& python grand_tour.py
[109, 36, 13, 3, 1, 0] 109 131.54 0
net prize : 22.54
[Herausforderungsphase], Kosten, Preis, abgeschlossen
Wird gedruckt. Die Kosten sind das gesamte Buy-In, der Preis ist der Gesamtpreis und die Anzahl der abgeschlossenen Abschlüsse.
Die herausgeforderte Phase hat ein Buy-In von "[$ 1, $ 2, $ 5, $ 12, $ 25, $ 60]". Ich habe $ 1
109 Mal ausprobiert, aber ich habe es noch nicht ausprobiert, weil $ 60
0 ist.
Ich denke, selbst wenn Sie es mit "$ 5" oder so versuchen, wird es richtig berechnet.
Dies ist mein erstes Mal mit Qiita und Github, also würde ich mich freuen, wenn Sie auf verschiedene Dinge hinweisen könnten!
Rufen Sie einen Wert aus einem Python-Listenelement (Qiita) ab, der einem Wert am nächsten kommt