{ "info": { "author": "Lawrence Weikum", "author_email": "lweikum@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Topic :: Software Development :: Libraries", "Topic :: Utilities" ], "description": "# Subpaths\nFinding common subpaths and counting occurrences of all subpaths between paths.\n\n\n## Examples\n\n### Finding common subpaths between paths\n\n```\nfrom pprint import pprint\nfrom subpaths.subpaths import find_all_common_subpaths_between\n\npath_a = [1, 2, 3, 4, 5]\npath_b = [3, 4, 5, 7]\npath_c = [2, 3, 4, 8, 9, 7]\n\npprint(find_all_common_subpaths_between(path_a, path_b, path_c))\n```\n\nWill return:\n\n```\n{(3, 4)}\n```\n\n\n### Counting all subpaths between paths\n\n```\nfrom pprint import pprint\nfrom subpaths.subpaths import find_all_subpath_occurrences\n\npath_a = [1, 2, 3, 4, 5]\n\npprint(find_all_subpath_occurrences(path_a))\n\npath_b = [3, 4, 5, 7]\npath_c = [2, 3, 4, 8, 9, 7]\n\npprint(find_all_subpath_occurrences(path_a, path_b, path_c))\n\n```\n\nWill return:\n```\ndefaultdict(,\n {(1, 2): 1,\n (1, 2, 3): 1,\n (1, 2, 3, 4): 1,\n (1, 2, 3, 4, 5): 1,\n (2, 3): 1,\n (2, 3, 4): 1,\n (2, 3, 4, 5): 1,\n (3, 4): 1,\n (3, 4, 5): 1,\n (4, 5): 1})\ndefaultdict(,\n {(1, 2): 1,\n (1, 2, 3): 1,\n (1, 2, 3, 4): 1,\n (1, 2, 3, 4, 5): 1,\n (2, 3): 2,\n (2, 3, 4): 2,\n (2, 3, 4, 5): 1,\n (2, 3, 4, 8): 1,\n (2, 3, 4, 8, 9): 1,\n (2, 3, 4, 8, 9, 7): 1,\n (3, 4): 3,\n (3, 4, 5): 2,\n (3, 4, 5, 7): 1,\n (3, 4, 8): 1,\n (3, 4, 8, 9): 1,\n (3, 4, 8, 9, 7): 1,\n (4, 5): 2,\n (4, 5, 7): 1,\n (4, 8): 1,\n (4, 8, 9): 1,\n (4, 8, 9, 7): 1,\n (5, 7): 1,\n (8, 9): 1,\n (8, 9, 7): 1,\n (9, 7): 1})\n```\n\n## Download\n\n```\npip install subpaths\n```\n\n\n## Future Improvements\n\n- Bound the shorted and longest paths to generate and count\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/lawrencemq/subpaths", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "subpaths", "package_url": "https://pypi.org/project/subpaths/", "platform": "", "project_url": "https://pypi.org/project/subpaths/", "project_urls": { "Homepage": "https://github.com/lawrencemq/subpaths" }, "release_url": "https://pypi.org/project/subpaths/0.2.0/", "requires_dist": null, "requires_python": "", "summary": "Finding common subpaths between paths.", "version": "0.2.0" }, "last_serial": 4325518, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "9756cc1f9c15305943bb424ec6e42474", "sha256": "2ba71412fc5afbc7bca8764c3b9805185c814dbc398cd1be319f9afc94dc15f0" }, "downloads": -1, "filename": "subpaths-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "9756cc1f9c15305943bb424ec6e42474", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3838, "upload_time": "2018-09-30T05:01:24", "url": "https://files.pythonhosted.org/packages/2c/b8/bf91a196dfb26e62485531b3422c8b54457549496620441f6c902eb5ac03/subpaths-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9471f49250cce0af77bd013a521555c0", "sha256": "ac67203aa4e53093b7bd39cd471ea740e265a8b16482f3087c89fdc314df5565" }, "downloads": -1, "filename": "subpaths-0.1.0.tar.gz", "has_sig": false, "md5_digest": "9471f49250cce0af77bd013a521555c0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2438, "upload_time": "2018-09-30T05:01:26", "url": "https://files.pythonhosted.org/packages/03/8e/ed60f7dabe146c7ec74bc9fa681b235d5172ba9a138306e044ba0967eac4/subpaths-0.1.0.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "d8e7c0d71f7a98f1a53f26186e37d5c7", "sha256": "de76e58820992ce18fd4e11eb7ca349385bf3f58c7c6bc19a28876a4494ffefd" }, "downloads": -1, "filename": "subpaths-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "d8e7c0d71f7a98f1a53f26186e37d5c7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4223, "upload_time": "2018-09-30T17:52:32", "url": "https://files.pythonhosted.org/packages/31/a9/8e22833920850b94e7efc55b2a25214b5473da5ed19fee7092d68d8a046d/subpaths-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b1f1716520be895575b0284d6a8307d4", "sha256": "4e3b9deaa5c519844d253d3f1d29568b79cc9c649378b336c560cb70182ace0f" }, "downloads": -1, "filename": "subpaths-0.2.0.tar.gz", "has_sig": false, "md5_digest": "b1f1716520be895575b0284d6a8307d4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2837, "upload_time": "2018-09-30T17:52:33", "url": "https://files.pythonhosted.org/packages/d2/ea/2ac1931758c8fc53c231466c1b5efe8424c1cbc26ca6ebedcd0bcbd7ca94/subpaths-0.2.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "d8e7c0d71f7a98f1a53f26186e37d5c7", "sha256": "de76e58820992ce18fd4e11eb7ca349385bf3f58c7c6bc19a28876a4494ffefd" }, "downloads": -1, "filename": "subpaths-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "d8e7c0d71f7a98f1a53f26186e37d5c7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4223, "upload_time": "2018-09-30T17:52:32", "url": "https://files.pythonhosted.org/packages/31/a9/8e22833920850b94e7efc55b2a25214b5473da5ed19fee7092d68d8a046d/subpaths-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b1f1716520be895575b0284d6a8307d4", "sha256": "4e3b9deaa5c519844d253d3f1d29568b79cc9c649378b336c560cb70182ace0f" }, "downloads": -1, "filename": "subpaths-0.2.0.tar.gz", "has_sig": false, "md5_digest": "b1f1716520be895575b0284d6a8307d4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2837, "upload_time": "2018-09-30T17:52:33", "url": "https://files.pythonhosted.org/packages/d2/ea/2ac1931758c8fc53c231466c1b5efe8424c1cbc26ca6ebedcd0bcbd7ca94/subpaths-0.2.0.tar.gz" } ] }