{ "info": { "author": "Richard Liebscher", "author_email": "r1tschy@posteo.de", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Software Development", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "# iterage\n\ntoolset for python iterators and generators\n\n## iterator operations\n\nDocumentation of *iterage* functions and python standard library functions\nfor do things with iterators and generators.\n\n### reduce\n\n#### any / iterage.reduce.iany\n\nTo check if at least one element is true, use the `any` built-in function:\n\n\t\tany([True, False, False]) # -> True\n\t\tany([False, False, False]) # -> False\n\n\t\tl = [0, 1, 14]\n\t\tany(x > 10 for x in l) # -> True\n\t\tany(x < 0 for x in l) # -> False\n\n\t\t# iterage\n\t\titerage.reduce.iany(l, lambda x: x > 10) # -> True\n\n\n#### all / iterage.reduce.iall\n\nTo check if all elements are true:\n\n\t\tall([True, True, True]) # -> True\n\t\tall([True, False, True]) # -> False\n\n\t\tl = [0, 1, 14]\n\t\tany(x >= 0 for x in l) # -> True\n\t\tany(x < 0 for x in l) # -> False\n\n\t\t# iterage\n\t\titerage.reduce.iall(l, lambda x: x >= 0) # -> True\n\n#### not any / iterage.reduce.inone\n\nTo check if no element is true:\n\n\t\tnot any([False, False, False]) # -> True\n\t\tnot any([True, False, True]) # -> False\n\n\t\tl = [0, 1, 14]\n\t\tnot any(x >= 0 for x in l) # -> False\n\t\tnot any(x < 0 for x in l) # -> True\n\n\t\t# iterage\n\t\titerage.reduce.inone(x < 0 for x in l) # -> True\n\n\n#### iterage.reduce.iempty\n\nCheck if iterable is empty:\n\n\t\titerage.reduce.iempty(x < 0 for x in [0,1,2,3]) # -> True\n\t\titerage.reduce.iempty(x > 1 for x in [0,1,2,3]) # -> False\n\n#### iterage.reduce.icount\n\nCount elements:\n\n\t\titerage.reduce.icount(range(4)) # -> 4\n\n#### iterage.reduce.icount_if\n\nCount true elements:\n\n\t\titerage.reduce.count_if([True, False, False]) # -> 1\n\n\t\titerage.reduce.count_if(x > 1 for x in [0,1,2,3]) # -> 2\n\n\t\t# alternative\n\t\tsum(1 for x in [0,1,2,3] if x > 1) # -> 2\n\t\titerage.reduce.icount(x for x in [0,1,2,3] if x > 1) # -> 2\n\n## similar tools\n\n* https://github.com/pytoolz/toolz/blob/master/toolz/itertoolz.py\n* https://pypi.python.org/pypi/more-itertools/\n\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/R1tschY/iterage", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "iterage", "package_url": "https://pypi.org/project/iterage/", "platform": "", "project_url": "https://pypi.org/project/iterage/", "project_urls": { "Bug Reports": "https://github.com/R1tschY/iterage/issues", "Homepage": "https://github.com/R1tschY/iterage", "Source": "https://github.com/R1tschY/iterage" }, "release_url": "https://pypi.org/project/iterage/0.1.dev0/", "requires_dist": null, "requires_python": "", "summary": "Yet another iterator utils lib", "version": "0.1.dev0" }, "last_serial": 4646262, "releases": { "0.1.dev0": [ { "comment_text": "", "digests": { "md5": "aa7db160e8fe123021f1f5e9b04b608b", "sha256": "6b15eafc6bae2e6e9cc120c5b2aa15cf714973a6f1422c608b327b6b62079d42" }, "downloads": -1, "filename": "iterage-0.1.dev0-py3-none-any.whl", "has_sig": false, "md5_digest": "aa7db160e8fe123021f1f5e9b04b608b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3354, "upload_time": "2018-12-30T13:58:21", "url": "https://files.pythonhosted.org/packages/56/56/d5aa947ffab65388f7bbbbacb4c6f6092d8243db9840f8ac8dcca6ef25a0/iterage-0.1.dev0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7d520ecc8444e14b53c9b56491bb82a6", "sha256": "476c77c43915d413d34617feb30c743d6a34b7e8d6b9c3f83468c3fb70a358c5" }, "downloads": -1, "filename": "iterage-0.1.dev0.tar.gz", "has_sig": false, "md5_digest": "7d520ecc8444e14b53c9b56491bb82a6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2409, "upload_time": "2018-12-30T13:58:24", "url": "https://files.pythonhosted.org/packages/6f/02/7c4b98170e72ca49c092c2392e26b0934675b6a5a9eec742107c6a2436bf/iterage-0.1.dev0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "aa7db160e8fe123021f1f5e9b04b608b", "sha256": "6b15eafc6bae2e6e9cc120c5b2aa15cf714973a6f1422c608b327b6b62079d42" }, "downloads": -1, "filename": "iterage-0.1.dev0-py3-none-any.whl", "has_sig": false, "md5_digest": "aa7db160e8fe123021f1f5e9b04b608b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3354, "upload_time": "2018-12-30T13:58:21", "url": "https://files.pythonhosted.org/packages/56/56/d5aa947ffab65388f7bbbbacb4c6f6092d8243db9840f8ac8dcca6ef25a0/iterage-0.1.dev0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7d520ecc8444e14b53c9b56491bb82a6", "sha256": "476c77c43915d413d34617feb30c743d6a34b7e8d6b9c3f83468c3fb70a358c5" }, "downloads": -1, "filename": "iterage-0.1.dev0.tar.gz", "has_sig": false, "md5_digest": "7d520ecc8444e14b53c9b56491bb82a6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2409, "upload_time": "2018-12-30T13:58:24", "url": "https://files.pythonhosted.org/packages/6f/02/7c4b98170e72ca49c092c2392e26b0934675b6a5a9eec742107c6a2436bf/iterage-0.1.dev0.tar.gz" } ] }