{ "info": { "author": "Idin", "author_email": "py@idin.ca", "bugtrack_url": null, "classifiers": [], "description": "# Interaction\nInteraction is a Python package for creating nice and colourful progress bars using the map() and apply() method as well as for loops.\n\n## ProgressBar\nTo use a progress bar you need to initiate a ProgressBar object with the maximum progress amount (total) and call the show method of the object with the amount to update the progress bar.\n\n```python\nfrom interaction import ProgressBar\nfrom time import sleep\n\nbar = ProgressBar(total=100)\n\nfor i in range(100):\n sleep(0.05)\n bar.show(amount=i+1)\n```\n\nYou can also add your own text to the progress bar.\n\n```python\nfrom interaction import ProgressBar\nfrom time import sleep\n\nbar = ProgressBar(total=100)\nfor i in range(100):\n sleep(0.05)\n bar.show(amount=i+1, text=f'working on {i}')\n```\n\n\n## map\nYou can also use the ProgressBar's map method instead of Python's map method. The output is an iterable. As soon as you turn the iterable object into a list the progress bar will be displayed.\n\n```python\nfrom interaction import ProgressBar\nfrom time import sleep\n\nlist1 = list(range(100))\n\ndef wait_and_double(x, wait_time):\n sleep(wait_time)\n return x*2\n\n# this will not make the progress bar appear\niterable2 = ProgressBar.map(\n function=lambda x: wait_and_double(x=x, wait_time=0.05), \n iterable=list1\n)\n\n# this will make the progress bar appear\nlist2 = list(iterable2)\n```\n\n## apply\nProgressBar also works with Panda's DataFrame and Series objects. \n\n```python\nfrom interaction import ProgressBar\nfrom time import sleep\nfrom pandas import DataFrame\n\ndata = DataFrame({\n 'name':['Arminius', 'Boudica', 'Alaric', 'Attila', 'Genseric'],\n 'ethnicity': ['German', 'Celt', 'Goth', 'Hun', 'Vandal']\n})\n\ndata['name_and_ethnicity'] = ProgressBar.apply(\n data=data, \n function=lambda x: x['name']+' the '+x['ethnicity']\n)\n\ndata['name_lower'] = ProgressBar.apply(\n series=data['name'], \n function=lambda x: x.lower()\n)\n```\n\n## iterate\nYou can also use ProgressBar to for iterating over iterable objects, especially *for* loops.\n\n```python\nfrom interaction import iterate\n\nfor i in iterate(range(100)):\n # do something\n pass\n```\n\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/idin/interaction", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "interaction", "package_url": "https://pypi.org/project/interaction/", "platform": "", "project_url": "https://pypi.org/project/interaction/", "project_urls": { "Homepage": "https://github.com/idin/interaction" }, "release_url": "https://pypi.org/project/interaction/1.3/", "requires_dist": null, "requires_python": "~=3.6", "summary": "Python library for creating progress bars", "version": "1.3" }, "last_serial": 4841242, "releases": { "1.3": [ { "comment_text": "", "digests": { "md5": "2a5ec7c4dc60a32d998dd28967f4fb10", "sha256": "3edcf4f027a4158c5971747dd44fc28c06868c47b2ed2215e62d4ae1cc0c2ca1" }, "downloads": -1, "filename": "interaction-1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "2a5ec7c4dc60a32d998dd28967f4fb10", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": "~=3.6", "size": 7193, "upload_time": "2019-02-19T18:54:43", "url": "https://files.pythonhosted.org/packages/ce/93/03a2763ee1b6c325f4c2440d88080adac44f1b5b09506a0aa37549da537f/interaction-1.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "eb9b924f1e9790d7f9913a770c5e3bea", "sha256": "6e23e423f91856f109c69a3508cb7d2f08abcb404109f14fc7b1e1c7541bc9fa" }, "downloads": -1, "filename": "interaction-1.3.tar.gz", "has_sig": false, "md5_digest": "eb9b924f1e9790d7f9913a770c5e3bea", "packagetype": "sdist", "python_version": "source", "requires_python": "~=3.6", "size": 5302, "upload_time": "2019-02-19T18:54:45", "url": "https://files.pythonhosted.org/packages/7b/96/6b66ea12f5a5a3af6bad58e92746b1f880cb27e2d8f3cbdaf7ff5e513d53/interaction-1.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "2a5ec7c4dc60a32d998dd28967f4fb10", "sha256": "3edcf4f027a4158c5971747dd44fc28c06868c47b2ed2215e62d4ae1cc0c2ca1" }, "downloads": -1, "filename": "interaction-1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "2a5ec7c4dc60a32d998dd28967f4fb10", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": "~=3.6", "size": 7193, "upload_time": "2019-02-19T18:54:43", "url": "https://files.pythonhosted.org/packages/ce/93/03a2763ee1b6c325f4c2440d88080adac44f1b5b09506a0aa37549da537f/interaction-1.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "eb9b924f1e9790d7f9913a770c5e3bea", "sha256": "6e23e423f91856f109c69a3508cb7d2f08abcb404109f14fc7b1e1c7541bc9fa" }, "downloads": -1, "filename": "interaction-1.3.tar.gz", "has_sig": false, "md5_digest": "eb9b924f1e9790d7f9913a770c5e3bea", "packagetype": "sdist", "python_version": "source", "requires_python": "~=3.6", "size": 5302, "upload_time": "2019-02-19T18:54:45", "url": "https://files.pythonhosted.org/packages/7b/96/6b66ea12f5a5a3af6bad58e92746b1f880cb27e2d8f3cbdaf7ff5e513d53/interaction-1.3.tar.gz" } ] }