Seite 1 von 1

Fehlermeldung bei Package pokereval

Verfasst: Mittwoch 3. Januar 2018, 11:58
von WeylandYutani
hallo zusammen,

ich bin ein python-anfänger, habe aber programmierkenntnisse in anderen sprachen. ich möchte gerne das package "pokereval" https://pypi.python.org/pypi/pokereval/0.1.2 bei mir zum laufen bekommen (benutze python 3 und pycharm). ich habe das package über settings -> project interpreter hinzugefügt und es wird mir auch richtig angezeigt. danach habe ich den quick-start code

Code: Alles auswählen

from pokereval.card import Card
from pokereval.hand_evaluator import HandEvaluator

hole = [Card(2, 1), Card(2, 2)]
board = []
score = HandEvaluator.evaluate_hand(hole, board)
ausgeführt und bekomme folgende fehlermeldung
Traceback (most recent call last):
File "C:/Users/Michael/PycharmProjects/Poker/test.py", line 6, in <module>
from pokereval.card import Card
File "C:\Users\Michael\venv\Poker\lib\site-packages\pokereval\card.py", line 3, in <module>
class Card:
File "C:\Users\Michael\venv\Poker\lib\site-packages\pokereval\card.py", line 27, in Card
STRING_TO_SUIT = dict([(v, k) for k, v in SUIT_TO_STRING.iteritems()])
AttributeError: 'dict' object has no attribute 'iteritems'
was genau möchte mir python damit sagen und wie kann ich das problem fixen?

viele grüße, michael

Re: Fehlermeldung bei Package pokereval

Verfasst: Mittwoch 3. Januar 2018, 12:02
von __deets__
Das Paket scheint nicht fuer Python3 vorbereitet. Du kannst es mal mit dem 2to3-Tool versuchen umzuwandeln, oder dich an den Autor wenden. Angesichts des Alters und der Inaktivitaet des Repositories wird das allerdings eine ziemliche Wette. Aber das bist du ja als Pokerspieler gewoehnt :)

Re: Fehlermeldung bei Package pokereval

Verfasst: Mittwoch 3. Januar 2018, 12:10
von narpfel
Moin,

das Paket ist nur mit Python 2 kompatibel. Es existiert allerdings ein PR, der Python-3-Unterstützung hinzufügt. Ich kann dir nicht sagen, wie das in PyCharm geht, aber um das manuell zu installieren, kannst du das Repo vom PR-Ersteller klonen und dann im Repo-Verzeichnis `pip3 install --user -e .` ausführen. Das installiert das Paket für deinen Benutzer (`--user`, kann auch weggelassen werden).

Alternativ könntest du den Autor auch anpingen, ob er den PR mergen möchte. Wobei der Code nicht wirklich schön ist...

Re: Fehlermeldung bei Package pokereval

Verfasst: Mittwoch 3. Januar 2018, 12:35
von WeylandYutani
danke für die schnellen antworten, ich werd mir den PR mal genauer anschauen, vllt. findet sich iwo auch ein handevaluator für py3.