From 857338ba5f567c0e3be41b0aa8cf68a2e8fd4a17 Mon Sep 17 00:00:00 2001 From: Michael Pilosov Date: Sun, 27 Nov 2022 02:28:49 -0700 Subject: [PATCH] description cleanup and web example --- README.md | 48 +++++++++++++++++++++++++++++++----------------- index.html | 5 ++--- setup.py | 2 +- 3 files changed, 34 insertions(+), 21 deletions(-) diff --git a/README.md b/README.md index f09af9c..7bf18aa 100644 --- a/README.md +++ b/README.md @@ -23,27 +23,41 @@ pip install pyroulette from pyroulette import generate_players, play_roulette players = generate_players( - number_of_players=10, - minimum_number_of_games=10, - budget=100, + num_players=50, + min_num_games=min_games, + total_budget=100 ) -for player in results: - print(player) - -results = play_roulette( +players = play_roulette( players=players, - number_of_games=1000, + games=1000, ) +print("Results:") +for p in sorted(players, reverse=True): + print("\n", p) + +print("Statistics") +# get the wallet values for all players as a list +wallets = [player.wallet for player in players] + +# calculate some statistics +avg_wallet = sum(wallets) / len(wallets) +median_wallet = sorted(wallets)[len(wallets) // 2] + +# calculate winnings +winnings = [p.wallet - p.budget for p in players] + +num_losers = len([w for w in winnings if w <= 0]) +num_winners = len([w for w in winnings if w > 0]) +num_bankrupt = len([l for l in wallets if l == 0]) + +# print the results +print(f"Average wallet value: {avg_wallet}\n") +print(f"Median wallet value: {median_wallet}\n") +print(f"Number of players who lost money: {num_losers}, proportion: {num_losers / len(players):.2f}") +print(f"Number of players who went bankrupt: {num_bankrupt}, proportion: {num_bankrupt / len(players):.2f}") +print() +print(f"Number of players who won more than they started with: {num_winners}, proportion: {num_winners / len(players):.2f}") ``` - - -# uploading to pypi - -``` -pip install build -python -m build --sdist --wheel -n -twine upload dist/* -``` diff --git a/index.html b/index.html index c326666..5687bb4 100644 --- a/index.html +++ b/index.html @@ -59,18 +59,17 @@ players = pr.play_roulette(players, games=100) # get the wallet values for all players as a list wallets = [player.wallet for player in players] -# calculate the average wallet value +# calculate some statistics avg_wallet = sum(wallets) / len(wallets) median_wallet = sorted(wallets)[len(wallets) // 2] # calculate winnings winnings = [p.wallet - p.budget for p in players] -# calculate the number of players who lost all their money num_losers = len([w for w in winnings if w <= 0]) num_winners = len([w for w in winnings if w > 0]) num_bankrupt = len([l for l in wallets if l == 0]) -# calculate the number of players who won more than they started with + # print the results print(f"Average wallet value: {avg_wallet}\n") print(f"Median wallet value: {median_wallet}\n") diff --git a/setup.py b/setup.py index e01b9e3..fd424bb 100644 --- a/setup.py +++ b/setup.py @@ -10,7 +10,7 @@ with open(BASEDIR.joinpath("README.md"), "r") as fp: setup( name="pyroulette", - version="0.0.4", + version="0.0.5", description="A package for exploring roulette strategies.", long_description=LONG_DESCRIPTION, long_description_content_type="text/markdown",