Skip to content

Commit

Permalink
fix README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
azriel1rf committed May 2, 2024
1 parent 167e788 commit 7909ade
Showing 1 changed file with 24 additions and 5 deletions.
29 changes: 24 additions & 5 deletions python/README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# PH Evaluator Python package (phevaluator)

[![GitHub Workflow Status](https://img.shields.io/github/workflow/status/HenryRLee/PokerHandEvaluator/CI?color=green&logo=github)](https://github.com/HenryRLee/PokerHandEvaluator/actions/workflows/ci.yml)
[![PyPI version](https://badge.fury.io/py/phevaluator.svg)](https://badge.fury.io/py/phevaluator)
[![PyPI downloads](https://img.shields.io/pypi/dm/phevaluator)](https://shields.io/category/downloads)
Expand All @@ -15,18 +16,25 @@ modification, the same algorithm can be also applied to evaluating Omaha
poker hands.

## Installation

The library requires Python 3.

- from release on PyPI

```shell
pip install phevaluator
```

- from source code

```shell
pip install .
```

## Using the library

The main function is the `evaluate_cards` function.

```python
from phevaluator.evaluator import evaluate_cards
Expand All @@ -37,32 +45,43 @@ p2 = evaluate_cards("9c", "4c", "4s", "9d", "4h", "2c", "9h")
print(f"The rank of the hand in player 1 is {p1}") # 292
print(f"The rank of the hand in player 2 is {p2}") # 236
```
The function can take both numbers and card strings (with a format like: 'Ah' or '2C'). Usage examples can be seen in `examples.py`.

The function can take both numbers and card strings (with a format like: 'Ah' or
'2C'). Usage examples can be seen in `examples.py`.

## Test
- The pre-calculated tables (`phevaluator.tables`) are tested by comparing them with the tables generated by test codes.
- The functionality of the evaluators is tested by comparing with the JSON files generated by the original C++ evaluator.

- The pre-calculated tables (`phevaluator.tables`) are tested by comparing them
with the tables generated by test codes.
- The functionality of the evaluators is tested by comparing with the JSON files
generated by the original C++ evaluator.
- The functionality of the other modules is tested by its purposes.

```shell
python3 -m unittest discover -v
```

## Development

- install from source code with `editable mode`

```shell
pip install -e .
```
The installed package reflects changes to files inside the `phevaluator` folder automatically.

The installed package reflects changes to files inside the `phevaluator`
folder automatically.

- recommended to format with [`black`](https://github.com/psf/black) before commit

check where to correct (without formatting)

```shell
black . --diff --color
```

format all

```shell
black .
```

0 comments on commit 7909ade

Please sign in to comment.