{ "info": { "author": "Dominic Slee", "author_email": "domslee1@gmail.com", "bugtrack_url": null, "classifiers": [ "Programming Language :: Python :: 2", "Programming Language :: Python :: 3" ], "description": "# Bsearch\n\n[![Build Status](https://travis-ci.org/domsleee/bsearch.svg?branch=master)](https://travis-ci.org/domsleee/bsearch)\n[![PyPI shield](https://img.shields.io/pypi/v/bsearch.svg?style=flat-square)](https://pypi.org/project/bsearch/)\n\nBinary search in python with more flexible comparisons.\n\n## Installation\n\n~~~bash\npip install bsearch\n~~~\n\n## Usage\n\n`bisect_left` and `bisect_right` are backwards compatible with the [bisect](https://docs.python.org/3/library/bisect.html) library. For example:\n\n~~~python\nfrom bsearch import bisect_left\na = [1,2,3,4,5]\ni = bisect_left(a, 4) # returns 3\n~~~\n\nYou can use the `key` option to search arrays of different types\n\n~~~python\nfrom bsearch import bisect_left\na = [(1,100), (2, 100), (5,200)]\n\n# using the first element of the tuple as the key\ni = bisect_left(a, 2, key=lambda x: x[0]) # returns 1\n~~~\n\nTo search descending list, use the wrapper `binary_search`, and provide an operator. This will return the smallest `i` such that `op(a[i], v)`\n\n~~~python\nfrom bsearch import binary_search\na = [5, 4, 3, 2]\ni = binary_search(a, 4, op=lambda a b: a >= b) # returns 1\n~~~\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/domsleee/bsearch", "keywords": "", "license": "BSD", "maintainer": "", "maintainer_email": "", "name": "bsearch", "package_url": "https://pypi.org/project/bsearch/", "platform": "", "project_url": "https://pypi.org/project/bsearch/", "project_urls": { "Homepage": "https://github.com/domsleee/bsearch" }, "release_url": "https://pypi.org/project/bsearch/0.0.4/", "requires_dist": null, "requires_python": "", "summary": "Binary search - bisect_left and bisect_right with more flexible comparison", "version": "0.0.4" }, "last_serial": 5168035, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "aa8d94057302d1881969c56916ba4f5e", "sha256": "a727146f5fbe192c3c80d17d4e736c266da87ed894930187fec2302c5b2a6062" }, "downloads": -1, "filename": "bsearch-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "aa8d94057302d1881969c56916ba4f5e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 2232, "upload_time": "2019-04-20T13:36:13", "url": "https://files.pythonhosted.org/packages/1f/8c/4bb846a35901c9bb23e9b430ec0432ddf901e4e615df9de483706bdd2a27/bsearch-0.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6554ff85d30f1c1e419fcb52a6402bfc", "sha256": "5bee16a5a4087890172397f48e5463514bae16dc47286ee6c885780c6788bd70" }, "downloads": -1, "filename": "bsearch-0.0.1.tar.gz", "has_sig": false, "md5_digest": "6554ff85d30f1c1e419fcb52a6402bfc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1844, "upload_time": "2019-04-20T13:36:15", "url": "https://files.pythonhosted.org/packages/dd/ae/cad2fd50352ed090d01da728f115ab30be1cf3628611bfba3c7d0aa440d0/bsearch-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "dfc550c117b5eb3dd68bb39c675a4957", "sha256": "110d88089caca3dbb8530be6bb353d4693835800e88ff476b7f1a034e1303501" }, "downloads": -1, "filename": "bsearch-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "dfc550c117b5eb3dd68bb39c675a4957", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 2598, "upload_time": "2019-04-20T15:31:29", "url": "https://files.pythonhosted.org/packages/71/17/edd639c726e73511fbafab8add9a94b980c5650592ad229693d08d96a958/bsearch-0.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b375e9d94c78f788019bb633c9e6863e", "sha256": "037886d13dbf97c67ade8011fc434671e14c40aed8cc5f19394bdc827838a867" }, "downloads": -1, "filename": "bsearch-0.0.2.tar.gz", "has_sig": false, "md5_digest": "b375e9d94c78f788019bb633c9e6863e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1825, "upload_time": "2019-04-20T15:31:31", "url": "https://files.pythonhosted.org/packages/d7/d4/c55467a9c68253c46ebf114a9adabf056d701a82c2b1261765a8a1cd3f9d/bsearch-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "d0bdd1253063ff2c032cb913d2e17e45", "sha256": "4da51f9f0e8b4e8943ceb4fcb31643d986f53f9d477c12b8a568dd2fa88427a7" }, "downloads": -1, "filename": "bsearch-0.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "d0bdd1253063ff2c032cb913d2e17e45", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 2598, "upload_time": "2019-04-20T15:41:55", "url": "https://files.pythonhosted.org/packages/7f/08/b833ccea1aa7c282aaf10bc62f5a9e4ab4c386598af27f8d0562bac48f88/bsearch-0.0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "78ad27581b91254f78ef652f811553ff", "sha256": "8784d01544a36c840e76f7fb9c203502d2dca0a4a015ccae13b2153f5de9fe53" }, "downloads": -1, "filename": "bsearch-0.0.3.tar.gz", "has_sig": false, "md5_digest": "78ad27581b91254f78ef652f811553ff", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1822, "upload_time": "2019-04-20T15:41:56", "url": "https://files.pythonhosted.org/packages/43/1e/1cfc7bdb422df232753d4acc081353188aea7424db4159bc797dfc69e67a/bsearch-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "e4b8464567daff5d3977230c141781b3", "sha256": "b81c25b5b547c97278f522bf09e4f0b4f5f55d1701335f2f6241d1d742ced19c" }, "downloads": -1, "filename": "bsearch-0.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "e4b8464567daff5d3977230c141781b3", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 2622, "upload_time": "2019-04-20T15:57:03", "url": "https://files.pythonhosted.org/packages/e9/83/dc034467160b6231a045dc5c79d324cdf6fc0771500ccd5e65553f13b7bc/bsearch-0.0.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d5a360cba999ab73dcd19e832e898b7c", "sha256": "335c7939079f124d9ba65ec282a71893fe494e87148448123174e31568ac693e" }, "downloads": -1, "filename": "bsearch-0.0.4.tar.gz", "has_sig": false, "md5_digest": "d5a360cba999ab73dcd19e832e898b7c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1824, "upload_time": "2019-04-20T15:57:04", "url": "https://files.pythonhosted.org/packages/81/27/c1969f2c3ef3a884390b7f9a8ba7e954f3d35ad10f625b077915250e1fce/bsearch-0.0.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "e4b8464567daff5d3977230c141781b3", "sha256": "b81c25b5b547c97278f522bf09e4f0b4f5f55d1701335f2f6241d1d742ced19c" }, "downloads": -1, "filename": "bsearch-0.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "e4b8464567daff5d3977230c141781b3", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 2622, "upload_time": "2019-04-20T15:57:03", "url": "https://files.pythonhosted.org/packages/e9/83/dc034467160b6231a045dc5c79d324cdf6fc0771500ccd5e65553f13b7bc/bsearch-0.0.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d5a360cba999ab73dcd19e832e898b7c", "sha256": "335c7939079f124d9ba65ec282a71893fe494e87148448123174e31568ac693e" }, "downloads": -1, "filename": "bsearch-0.0.4.tar.gz", "has_sig": false, "md5_digest": "d5a360cba999ab73dcd19e832e898b7c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1824, "upload_time": "2019-04-20T15:57:04", "url": "https://files.pythonhosted.org/packages/81/27/c1969f2c3ef3a884390b7f9a8ba7e954f3d35ad10f625b077915250e1fce/bsearch-0.0.4.tar.gz" } ] }