{ "info": { "author": "Oliver Steele", "author_email": "steele@osteele.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6" ], "description": "# Bootle: Half-Index Lists for Python\n\n\u201cShould array indices start at 0 or 1? My compromise of 0.5 was rejected\nwithout, I thought, proper consideration.\u201d -- Stan Kelly-Bootle\n\n## Installation\n\n```bash\npip3 install bootle\n```\n\n## Usage\n\n```python\nfrom bootle import List\n\nxs = List([1, 2, 3])\nassert xs[0.5] == 1\nassert xs[:1.5] == [1]\nxs[1.5] == 2\nassert xs.index(2) == 1.5\n```\n\n## References\n\n* [\"Why numbering should start at zero\"](https://www.cs.utexas.edu/users/EWD/transcriptions/EWD08xx/EWD831.html), Edsger W. Dijkstra, 1982\n* [Why Numbering Should Start At Zero](http://wiki.c2.com/?WhyNumberingShouldStartAtZero), WikiWikiWeb\n* [Why Numbering Should Start At One](http://wiki.c2.com/?WhyNumberingShouldStartAtOne), WikiWikiWeb\n* [Zero-based numbering](https://en.wikipedia.org/wiki/Zero-based_numbering), Wikipedia\n\n## License\n\nWTFPL\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/osteele/bootle", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "bootle", "package_url": "https://pypi.org/project/bootle/", "platform": "", "project_url": "https://pypi.org/project/bootle/", "project_urls": { "Homepage": "https://github.com/osteele/bootle" }, "release_url": "https://pypi.org/project/bootle/0.1.1/", "requires_dist": null, "requires_python": ">=3.0", "summary": "\u201cShould array indices start at 0 or 1? My compromise of 0.5 was rejected", "version": "0.1.1" }, "last_serial": 4093823, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "e55044c65ecdee9eceb9f74ec1e0cea2", "sha256": "9267779994a7fb9e8a3857fef0f82b4c405331bb1d4104195ffa26d4788c487d" }, "downloads": -1, "filename": "bootle-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "e55044c65ecdee9eceb9f74ec1e0cea2", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.0", "size": 4002, "upload_time": "2018-07-23T15:37:40", "url": "https://files.pythonhosted.org/packages/4c/8f/582d894b712099a3d2278142e4a3d6258494351769a7addc8c95ba0b2d5d/bootle-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "fb152b2eb4ecd090baef3433b8280f53", "sha256": "8bc744c8d482414b66b0ae17646f4a566af640aae71bf7d8432daf9235f5b7ca" }, "downloads": -1, "filename": "bootle-0.1.0.tar.gz", "has_sig": false, "md5_digest": "fb152b2eb4ecd090baef3433b8280f53", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.0", "size": 5225, "upload_time": "2018-07-23T15:37:41", "url": "https://files.pythonhosted.org/packages/19/50/1aa822b7681280d38a17d5118515989dee8e9d29aacf11162935f4f50f9f/bootle-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "e52d144f3314b3f58f14738ad721e0ff", "sha256": "e8edd287fd011d11bb02f4289005d123373ba54996c3d8e3ad98128b520d80f2" }, "downloads": -1, "filename": "bootle-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "e52d144f3314b3f58f14738ad721e0ff", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.0", "size": 4195, "upload_time": "2018-07-23T16:02:39", "url": "https://files.pythonhosted.org/packages/23/12/f9992ec1a51b49a71230849ec92105f26d0c0ac132b5daba6365a9ff2290/bootle-0.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "dd9720f0b79a4388c6ed90ba889388e6", "sha256": "1cc7e961fd229f5fa17c1ff1471484d212ecdae347e39c7101888e69031a522a" }, "downloads": -1, "filename": "bootle-0.1.1.tar.gz", "has_sig": false, "md5_digest": "dd9720f0b79a4388c6ed90ba889388e6", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.0", "size": 5468, "upload_time": "2018-07-23T16:02:40", "url": "https://files.pythonhosted.org/packages/eb/af/03365722a72f2ef7a05121705a4c75a0a4bf4cc4c7a220c75be8a16ea77f/bootle-0.1.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "e52d144f3314b3f58f14738ad721e0ff", "sha256": "e8edd287fd011d11bb02f4289005d123373ba54996c3d8e3ad98128b520d80f2" }, "downloads": -1, "filename": "bootle-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "e52d144f3314b3f58f14738ad721e0ff", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.0", "size": 4195, "upload_time": "2018-07-23T16:02:39", "url": "https://files.pythonhosted.org/packages/23/12/f9992ec1a51b49a71230849ec92105f26d0c0ac132b5daba6365a9ff2290/bootle-0.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "dd9720f0b79a4388c6ed90ba889388e6", "sha256": "1cc7e961fd229f5fa17c1ff1471484d212ecdae347e39c7101888e69031a522a" }, "downloads": -1, "filename": "bootle-0.1.1.tar.gz", "has_sig": false, "md5_digest": "dd9720f0b79a4388c6ed90ba889388e6", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.0", "size": 5468, "upload_time": "2018-07-23T16:02:40", "url": "https://files.pythonhosted.org/packages/eb/af/03365722a72f2ef7a05121705a4c75a0a4bf4cc4c7a220c75be8a16ea77f/bootle-0.1.1.tar.gz" } ] }