{ "info": { "author": "Allen Boyd Cunningham", "author_email": "cleverfoundation@gmail.com", "bugtrack_url": null, "classifiers": [ "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License (GPL)", "Operating System :: MacOS :: MacOS X", "Operating System :: POSIX :: Linux", "Programming Language :: C", "Programming Language :: Python", "Topic :: Games/Entertainment" ], "description": "pokyr\r\n=====\r\n\r\nThis is a python library that provides routines for very fast poker hand\r\ncomparisons to power hand match ups.\r\n\r\nPure python and c-extention modules are included. Using the cpoker\r\nmodule it should be easy to write python code that will, for example,\r\nquickly caluculate expected hand strength squared and opponent cluster\r\nhand strength `(EHS2/OCHS)`_.\r\n\r\nBe aware that the main modules use a lookup table of over 30mb, which in\r\nthe case of the pure python version can take up to a second to build. The\r\nrank lookup sceme uses 13 magic numbers attributed to the `specialK blog`_,\r\nwhich I used to supplement my own algorithm. A pure python lite version is\r\nalso include that leaves a small memory footprint and is still fast. A good\r\nuse case might be where you can\u2019t use third party modules and have\r\nlimited resources, such as on a free google-app-engine site.\r\n\r\nSample\r\n------\r\n\r\nCards are represented by intergers 0-51 and groups of cards are contained\r\nin lists. A Card class is provided for convenience. The pretty\\_args\r\nwrapper allows you to use standard card strings rather than Card objects\r\nor integers.\r\n\r\n.. code:: python\r\n\r\n >>> from poker import cpoker\r\n >>> from poker.utils import pretty_args\r\n >>> #return the evs of a match between any number of hands\r\n >>> enum = pretty_args(cpoker.full_enumeration)\r\n >>> enum([\"AsKd\", \"8c2s\"])\r\n [0.6753362720638392, 0.32466372793616083]\r\n >>> enum([\"AsKd\", \"7h 8h\", \"6c 6d\"], \"Kc 6h 9h\")\r\n [0.021040974529346623, 0.44518272425249167, 0.5337763012181617]\r\n >>> # percentile on river vs all 990 hand combos\r\n >>> pretty_args(cpoker.rivervalue)(\"As Kd\", \"Ks Qh Jc 8s 8d\")\r\n 0.8585858585858586\r\n\r\nCompile and Install\r\n-------------------\r\n\r\nOSX -> Easiest is to install xcode command line tools.\r\nOn Maverick you should be able to open a terminal and just type\r\n\r\n::\r\n\r\n $ xcode-select --install\r\n\r\n\r\nOn older versions you may have to download the entire Xcode from\r\nthe app store.\r\n\r\n\r\nLinux -> You just need python-dev and gcc and you should be good to go.\r\nie. on debian/ubuntu:\r\n\r\n::\r\n\r\n $ sudo apt-get install gcc python-dev\r\n\r\n\r\nThen in any case from the pokyr directory:\r\n\r\n::\r\n\r\n $ python setup.py install\r\n\r\nor with pip\r\n\r\n::\r\n\r\n $ sudo easy_install pip\r\n $ sudo pip install pokyr\r\n\r\n\r\nThere is an issue with later versions of osx and Xcode 5.1.\r\nIf you get the error:\r\n\r\n::\r\n\r\n clang: error: unknown argument: '-mno-fused-madd' [-Wunused-command-line-argument-hard-error-in-future]\r\n\r\nyou can try running this before setup.py:\r\n\r\n::\r\n\r\n $ export CFLAGS=-Qunused-arguments\r\n\r\nApple will hopefully fix this problem in a future release.\r\n\r\n.. _(EHS2/OCHS): http://poker.cs.ualberta.ca/publications/AAMAS13-abstraction.pdf\r\n.. _specialK blog: http://specialk-coding.blogspot.com/2010/04/texas-holdem-7-card-evaluator_23.html", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/cleverpiggy/pokyr", "keywords": "", "license": "GPL", "maintainer": "", "maintainer_email": "", "name": "pokyr", "package_url": "https://pypi.org/project/pokyr/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/pokyr/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/cleverpiggy/pokyr" }, "release_url": "https://pypi.org/project/pokyr/0.1.2/", "requires_dist": null, "requires_python": null, "summary": "Poker hand evaluating modules that provide fast enumerations.Both C Extension module it's pure python analogies are included.", "version": "0.1.2" }, "last_serial": 1076063, "releases": { "0.1": [ { "comment_text": "built for Linux-3.13.0-24-generic-x86_64-with-glibc2.4", "digests": { "md5": "324686ae065523cb02942de03d9cf05f", "sha256": "f1a23bbd24a1f01ee296fbf2fa0354a25da1e12318be77702fb7294b907808c9" }, "downloads": -1, "filename": "pokyr-0.1.linux-x86_64.tar.gz", "has_sig": false, "md5_digest": "324686ae065523cb02942de03d9cf05f", "packagetype": "bdist_dumb", "python_version": "2.7", "requires_python": null, "size": 64896, "upload_time": "2014-04-28T18:35:48", "url": "https://files.pythonhosted.org/packages/ef/73/694bca0e9395cd9a45016e4d52e5a0fba09e1f95ab0c442af47ceced3bd6/pokyr-0.1.linux-x86_64.tar.gz" }, { "comment_text": "built for Darwin-13.1.0", "digests": { "md5": "eb2961c8354e20b616eef8fe7a8e108e", "sha256": "d1ea455a564385a0efb9bf5386e94094432c7fd56a074014d9b0026a46b315ee" }, "downloads": -1, "filename": "pokyr-0.1.macosx-10.9-intel.tar.gz", "has_sig": false, "md5_digest": "eb2961c8354e20b616eef8fe7a8e108e", "packagetype": "bdist_dumb", "python_version": "2.7", "requires_python": null, "size": 58049, "upload_time": "2014-04-28T18:15:42", "url": "https://files.pythonhosted.org/packages/ab/93/94ef4e68d02b789a4e0c6745676e32358b88a87c3139b4738ac48faaf591/pokyr-0.1.macosx-10.9-intel.tar.gz" }, { "comment_text": "", "digests": { "md5": "ba164b25ca6467ce95e0c0f7d3438805", "sha256": "34cf4badab6d44e7d2af22d4b93c278213a3e0a1045075bc22f0609d5db7e20b" }, "downloads": -1, "filename": "pokyr-0.1.tar.gz", "has_sig": false, "md5_digest": "ba164b25ca6467ce95e0c0f7d3438805", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30158, "upload_time": "2014-04-28T04:04:36", "url": "https://files.pythonhosted.org/packages/58/cf/1bbf23069c0b811424f1a7d39abc86970d7187f4f248c5094266b720d343/pokyr-0.1.tar.gz" } ], "0.1.2": [ { "comment_text": "built for Linux-3.13.0-24-generic-x86_64-with-glibc2.4", "digests": { "md5": "bb23cf7a3ec217d94e682160001c3cf8", "sha256": "4d6cad964094b0d035457c8cc0cd7fb7001c4044b57fdcfc3b8ec374c1a1ce7a" }, "downloads": -1, "filename": "pokyr-0.1.2.linux-x86_64.tar.gz", "has_sig": false, "md5_digest": "bb23cf7a3ec217d94e682160001c3cf8", "packagetype": "bdist_dumb", "python_version": "2.7", "requires_python": null, "size": 65326, "upload_time": "2014-04-29T00:16:51", "url": "https://files.pythonhosted.org/packages/d3/74/af5086d4f92b221985c4b5ba7b77b4f17ace2c1184b3a16c90d56b870246/pokyr-0.1.2.linux-x86_64.tar.gz" }, { "comment_text": "built for Darwin-13.1.0", "digests": { "md5": "114531bf63381fe00b11524b9f765940", "sha256": "e77f3df483d3a0ebee4d63a02cc92416bf8191c290d91845cebbe306a31178e4" }, "downloads": -1, "filename": "pokyr-0.1.2.macosx-10.9-intel.tar.gz", "has_sig": false, "md5_digest": "114531bf63381fe00b11524b9f765940", "packagetype": "bdist_dumb", "python_version": "2.7", "requires_python": null, "size": 58613, "upload_time": "2014-04-29T00:24:42", "url": "https://files.pythonhosted.org/packages/12/3e/666481bf3832de072bfcd08342bbca92b58decbd1f07fc3e0c521c5747a5/pokyr-0.1.2.macosx-10.9-intel.tar.gz" }, { "comment_text": "", "digests": { "md5": "29860acb6dd3f3f7aa95c9a82cb71d7b", "sha256": "734befc9404cd2af677e4deca9561407ced3fcd690536af46f79a6f811afc0d4" }, "downloads": -1, "filename": "pokyr-0.1.2.tar.gz", "has_sig": false, "md5_digest": "29860acb6dd3f3f7aa95c9a82cb71d7b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30360, "upload_time": "2014-04-29T00:16:53", "url": "https://files.pythonhosted.org/packages/99/9e/3656ecf4c25d3563f0c940c1d32514e1967956fb38d603684c5241dd04d4/pokyr-0.1.2.tar.gz" } ] }, "urls": [ { "comment_text": "built for Linux-3.13.0-24-generic-x86_64-with-glibc2.4", "digests": { "md5": "bb23cf7a3ec217d94e682160001c3cf8", "sha256": "4d6cad964094b0d035457c8cc0cd7fb7001c4044b57fdcfc3b8ec374c1a1ce7a" }, "downloads": -1, "filename": "pokyr-0.1.2.linux-x86_64.tar.gz", "has_sig": false, "md5_digest": "bb23cf7a3ec217d94e682160001c3cf8", "packagetype": "bdist_dumb", "python_version": "2.7", "requires_python": null, "size": 65326, "upload_time": "2014-04-29T00:16:51", "url": "https://files.pythonhosted.org/packages/d3/74/af5086d4f92b221985c4b5ba7b77b4f17ace2c1184b3a16c90d56b870246/pokyr-0.1.2.linux-x86_64.tar.gz" }, { "comment_text": "built for Darwin-13.1.0", "digests": { "md5": "114531bf63381fe00b11524b9f765940", "sha256": "e77f3df483d3a0ebee4d63a02cc92416bf8191c290d91845cebbe306a31178e4" }, "downloads": -1, "filename": "pokyr-0.1.2.macosx-10.9-intel.tar.gz", "has_sig": false, "md5_digest": "114531bf63381fe00b11524b9f765940", "packagetype": "bdist_dumb", "python_version": "2.7", "requires_python": null, "size": 58613, "upload_time": "2014-04-29T00:24:42", "url": "https://files.pythonhosted.org/packages/12/3e/666481bf3832de072bfcd08342bbca92b58decbd1f07fc3e0c521c5747a5/pokyr-0.1.2.macosx-10.9-intel.tar.gz" }, { "comment_text": "", "digests": { "md5": "29860acb6dd3f3f7aa95c9a82cb71d7b", "sha256": "734befc9404cd2af677e4deca9561407ced3fcd690536af46f79a6f811afc0d4" }, "downloads": -1, "filename": "pokyr-0.1.2.tar.gz", "has_sig": false, "md5_digest": "29860acb6dd3f3f7aa95c9a82cb71d7b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30360, "upload_time": "2014-04-29T00:16:53", "url": "https://files.pythonhosted.org/packages/99/9e/3656ecf4c25d3563f0c940c1d32514e1967956fb38d603684c5241dd04d4/pokyr-0.1.2.tar.gz" } ] }