{ "info": { "author": "Yaroslav Bibaev", "author_email": "yaroslav@gmx.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.7" ], "description": "# ChIter - iterable as a chain\n\n## Requirements\n* Python 3.7+\n\n## Installation\n```bash\npip install chiter\n```\n\n## Documentation\nComing soon\n\n## Why?\n* Chains do not require saving the intermediate state in temporary variables\n* Look more readable\n\n### Examples\nIt is necessary to get the sum of all numbers from the following sequence:`\"23,45,67\\n45,56,55\\n\\n45,a,5\\n-45,56,0\"`\n\n#### first way\n```python\nfrom itertools import chain\n\n\ndata = \"23,45,67\\n45,56,55\\n\\n45,a,5\\n-45,56,0\"\n\nchunks = (chunk.split(',') for chunk in data.split())\nflat_data = chain.from_iterable(chunks)\nitems = (int(item) for item in flat_data if not item.isalpha())\nresult = sum(items)\n\nassert result == 352\n```\n#### second way\n```python\nfrom itertools import chain\n\n\ndata = \"23,45,67\\n45,56,55\\n\\n45,a,5\\n-45,56,0\"\n\nresult = sum((\n int(item)\n for item in chain.from_iterable(map(lambda c: c.split(','), data.split()))\n if not item.isalpha()\n))\nassert result == 352\n```\n#### chiter way\n```python\nfrom chiter import ChIter as I\n\n\ndata = \"23,45,67\\n45,56,55\\n\\n45,a,5\\n-45,56,0\"\n\nresult = (I(data.split())\n .map(lambda x: x.split(','))\n .flat()\n .filterfalse(str.isalpha)\n .map(int)\n .sum())\n\nassert result == 352\n```\n\n## Related Libraries\n* [flupy](https://github.com/olirice/flupy)", "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/nede1/chiter", "keywords": "fluent interface,method chaining", "license": "MIT", "maintainer": "Yaroslav Bibaev", "maintainer_email": "yaroslav@gmx.com", "name": "chiter", "package_url": "https://pypi.org/project/chiter/", "platform": "", "project_url": "https://pypi.org/project/chiter/", "project_urls": { "Homepage": "https://github.com/nede1/chiter", "Repository": "https://github.com/nede1/chiter" }, "release_url": "https://pypi.org/project/chiter/1.0.0a2/", "requires_dist": null, "requires_python": ">=3.7,<4.0", "summary": "iterable as a chain", "version": "1.0.0a2" }, "last_serial": 5325600, "releases": { "1.0.0a2": [ { "comment_text": "", "digests": { "md5": "aa0033193af3c18bdf0948e19fec0816", "sha256": "56d405513a37ffe12d1b8030d7b2aeb3d9df314e311afb5fd3e8d1fa12100331" }, "downloads": -1, "filename": "chiter-1.0.0a2-py3-none-any.whl", "has_sig": false, "md5_digest": "aa0033193af3c18bdf0948e19fec0816", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7,<4.0", "size": 5095, "upload_time": "2019-05-28T08:06:00", "url": "https://files.pythonhosted.org/packages/bd/99/dbeef784bcebe1c27080ac3a39c4b5caaa7fa17fb51eb11c4e7473fa7958/chiter-1.0.0a2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bf6bd8a299807f7b794fb6192551d383", "sha256": "cdbcb69169cafe78e33a261c2bb3843b8bedcebb79dcd3bea640dc4d4a407880" }, "downloads": -1, "filename": "chiter-1.0.0a2.tar.gz", "has_sig": false, "md5_digest": "bf6bd8a299807f7b794fb6192551d383", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7,<4.0", "size": 4391, "upload_time": "2019-05-28T08:06:01", "url": "https://files.pythonhosted.org/packages/0f/d5/caf2c5532f00822fac5960c42c32ab92bd1351b0113a8821c0228a149cd8/chiter-1.0.0a2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "aa0033193af3c18bdf0948e19fec0816", "sha256": "56d405513a37ffe12d1b8030d7b2aeb3d9df314e311afb5fd3e8d1fa12100331" }, "downloads": -1, "filename": "chiter-1.0.0a2-py3-none-any.whl", "has_sig": false, "md5_digest": "aa0033193af3c18bdf0948e19fec0816", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7,<4.0", "size": 5095, "upload_time": "2019-05-28T08:06:00", "url": "https://files.pythonhosted.org/packages/bd/99/dbeef784bcebe1c27080ac3a39c4b5caaa7fa17fb51eb11c4e7473fa7958/chiter-1.0.0a2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bf6bd8a299807f7b794fb6192551d383", "sha256": "cdbcb69169cafe78e33a261c2bb3843b8bedcebb79dcd3bea640dc4d4a407880" }, "downloads": -1, "filename": "chiter-1.0.0a2.tar.gz", "has_sig": false, "md5_digest": "bf6bd8a299807f7b794fb6192551d383", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7,<4.0", "size": 4391, "upload_time": "2019-05-28T08:06:01", "url": "https://files.pythonhosted.org/packages/0f/d5/caf2c5532f00822fac5960c42c32ab92bd1351b0113a8821c0228a149cd8/chiter-1.0.0a2.tar.gz" } ] }