{ "info": { "author": "Daniel Pepper", "author_email": "", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Natural Language :: English", "Operating System :: OS Independent", "Topic :: Utilities" ], "description": "rekey\n======\nTransform collections into dicts by deriving keys from each item.\n\n\n### Install\n```pip install rekey```\n\n\n### Usage\n```\nfrom rekey import rekey\n\n# key a list of records by id\npeople = [\n { 'id' : 1, 'name' : 'alice', 'age' : 30 },\n { 'id' : 2, 'name' : 'bob', 'age' : 24 },\n { 'id' : 3, 'name' : 'charlie', 'age' : 88 },\n]\nrekey(people, 'id')\n=> {\n 1 => { 'id' : 1, 'name' : 'alice', 'age' : 30},\n 2 => { 'id' : 2, 'name' : 'bob', 'age' : 24},\n 3 => { 'id' : 3, 'name' : 'charlie', 'age' : 88},\n}\n\n# create an id => value map\nrekey(people, 'id', 'name')\n=> {\n 1 => 'alice',\n 2 => 'bob',\n 3 => 'charlie',\n}\n\n\n# use Rekeyables for built-in functionality\n\nfrom rekey.rekeyable import RekeyableSet\n\nPoint = namedtuple('Point', ['name', 'x', 'y']) # hashable\npoints = RekeyableSet([\n Point(name='home', x=1, y=2),\n Point(name='work', x=3, y=6),\n])\npoints.rekey('name') \n=> {\n 'home' : Point(name='home', x=1, y=2),\n 'work' : Point(name='work', x=3, y=6),\n}\n\n\n# use the Rekeyable mixin to build your own\n\nfrom rekey.rekeyable import Rekeyable\nclass MyDict(dict, Rekeyable): pass\n\nMyDict({\n 'home' : {'distance' : 1, 'weather' : 'sunny' },\n 'work' : {'distance' : 5, 'weather' : 'foggy' },\n}).rekey('weather', 'distance')\n> {\n 'sunny' : 1,\n 'foggy' : 5,\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/dpep/pyrekey", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "rekey", "package_url": "https://pypi.org/project/rekey/", "platform": "any", "project_url": "https://pypi.org/project/rekey/", "project_urls": { "Homepage": "https://github.com/dpep/pyrekey" }, "release_url": "https://pypi.org/project/rekey/1.2.3/", "requires_dist": null, "requires_python": "", "summary": "enumerable utility", "version": "1.2.3" }, "last_serial": 4762542, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "be7831faac011cfa18bdb8b77b2030c5", "sha256": "e19aa5f6e9e089aa6b8943586b565e97a222d7979958f0d455d85238038458a8" }, "downloads": -1, "filename": "rekey-0.0.1.tar.gz", "has_sig": true, "md5_digest": "be7831faac011cfa18bdb8b77b2030c5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2587, "upload_time": "2017-01-16T01:02:19", "url": "https://files.pythonhosted.org/packages/5a/a6/bca40b370a3b525218f48a35d4119200597a17840dc8f7933031aacb3992/rekey-0.0.1.tar.gz" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "b780ac9c2261fcefa35801c83a12c6f0", "sha256": "5bb3a807dc11c6aba7b00072cf6d70276bad258f4a124c16d098a0eb002d197b" }, "downloads": -1, "filename": "rekey-0.1.0.tar.gz", "has_sig": true, "md5_digest": "b780ac9c2261fcefa35801c83a12c6f0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3141, "upload_time": "2017-01-16T02:27:39", "url": "https://files.pythonhosted.org/packages/11/ad/903411a7a77518ed4cc9665bffdb8170182e3e3d88d5975386e294fc1879/rekey-0.1.0.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "928c7d5f0aec7aceb8d43dcb9a5cd55a", "sha256": "13cf60d1b0c8f9bd1798f2fd3a1a61ad345f50b3fa368871ba9ede3b72432389" }, "downloads": -1, "filename": "rekey-1.0.0.tar.gz", "has_sig": true, "md5_digest": "928c7d5f0aec7aceb8d43dcb9a5cd55a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4264, "upload_time": "2018-04-27T18:45:39", "url": "https://files.pythonhosted.org/packages/e8/92/38607a804a0b4aadcf4c7797818fb3bbc7db5cab04df5d15e7cbd3fddbf8/rekey-1.0.0.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "6f706e9c63ff723fe72e5c4c9b62fdc7", "sha256": "200a4c984d29bf4235c54f4f8f687fc8d0a4ee2d3b84cdb6571e498a07c0f79c" }, "downloads": -1, "filename": "rekey-1.1.0.tar.gz", "has_sig": true, "md5_digest": "6f706e9c63ff723fe72e5c4c9b62fdc7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4392, "upload_time": "2018-04-28T05:42:41", "url": "https://files.pythonhosted.org/packages/62/31/13d86d433de7f93cf8f051947dd76c2d42ea0dc935f56844975c2fdf92e7/rekey-1.1.0.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "971052361d3b49771cfcaab48086efcd", "sha256": "71d00f0992b3b1812f466fb25d3115f841f402076a8064056ca835f29256564d" }, "downloads": -1, "filename": "rekey-1.2.0.tar.gz", "has_sig": true, "md5_digest": "971052361d3b49771cfcaab48086efcd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4448, "upload_time": "2018-04-28T06:53:26", "url": "https://files.pythonhosted.org/packages/c2/b4/9b9315731b52ddaef9ccceee3f87d8e780a5f6ff2920b5d23239c84ec1f0/rekey-1.2.0.tar.gz" } ], "1.2.1": [ { "comment_text": "", "digests": { "md5": "cc7f61db3038b34019f9c91cd9d6cd38", "sha256": "c9a427c5597a60ef2b7cffcfa88bf1eb11adbb0956b609cf67d4f8b6bbba212b" }, "downloads": -1, "filename": "rekey-1.2.1.tar.gz", "has_sig": true, "md5_digest": "cc7f61db3038b34019f9c91cd9d6cd38", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4500, "upload_time": "2018-05-07T23:58:11", "url": "https://files.pythonhosted.org/packages/d3/8b/46b03e93772e1958be6ec946e5de549c921c02edd613700349a5d4057433/rekey-1.2.1.tar.gz" } ], "1.2.2": [ { "comment_text": "", "digests": { "md5": "78cf5e8277cdb4f22765e81a508934f0", "sha256": "457abba0c45f6aebd6eee861727b3a49572c8fe44024b1fea728291c1107ef5b" }, "downloads": -1, "filename": "rekey-1.2.2.tar.gz", "has_sig": true, "md5_digest": "78cf5e8277cdb4f22765e81a508934f0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4595, "upload_time": "2018-05-08T01:28:22", "url": "https://files.pythonhosted.org/packages/f6/d6/57043273c7c46e0ca6c46c29b99698abb576b15c67254e1408a15a681d7d/rekey-1.2.2.tar.gz" } ], "1.2.3": [ { "comment_text": "", "digests": { "md5": "8d952d07d74bc778d7382fb4d2bfec16", "sha256": "9687d501c7631ff337ec0bce0b1071fa57c38cc4f4b615fa0cf9611013406375" }, "downloads": -1, "filename": "rekey-1.2.3.tar.gz", "has_sig": true, "md5_digest": "8d952d07d74bc778d7382fb4d2bfec16", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4636, "upload_time": "2019-01-31T05:55:58", "url": "https://files.pythonhosted.org/packages/b5/65/b839b36308d62d10cf078463dfe3974103982308d1bf7a763b330aab33d8/rekey-1.2.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "8d952d07d74bc778d7382fb4d2bfec16", "sha256": "9687d501c7631ff337ec0bce0b1071fa57c38cc4f4b615fa0cf9611013406375" }, "downloads": -1, "filename": "rekey-1.2.3.tar.gz", "has_sig": true, "md5_digest": "8d952d07d74bc778d7382fb4d2bfec16", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4636, "upload_time": "2019-01-31T05:55:58", "url": "https://files.pythonhosted.org/packages/b5/65/b839b36308d62d10cf078463dfe3974103982308d1bf7a763b330aab33d8/rekey-1.2.3.tar.gz" } ] }