{ "info": { "author": "Jonas Lundberg", "author_email": "jonas@5monkeys.se", "bugtrack_url": null, "classifiers": [ "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Utilities" ], "description": "Partialize\n==========\n\nPython partial on steroids\n\n.. image:: https://travis-ci.org/5monkeys/partialize.png?branch=master\n :target: http://travis-ci.org/5monkeys/partialize\n\nLike python :code:`functools.partial` but with change/extend access to args and kwargs.\nAlso a great tool even if no partial is needed but the function takes args/kwargs that often depends on logic.\n\nEasiest used as a decorator\n\n.. code:: python\n\n from partialize import partialize\n\n @partialize\n def dummy(a, b, c=None):\n return 'hello world'\n\n partial_dummy = dummy.partial(1)\n partial_dummy.b = 2\n partial_dummy(c=3)\n\nor invoked inline...\n\n.. code:: python\n\n partial_dummy = partialize(dummy)\n partial_dummy.a = 1\n partial_dummy.update(b=2)\n partial_dummy()\n partial_dummy(c=3)\n\nUse it on functions that needs logic to affect arguments passed, instead of building and passing a `dict` as kwargs\nwhich often gets quite messy and hard to read.\n\nDict kwargs example:\n\n.. code:: python\n\n from partialize import partialize\n\n @partialize\n def search_products(site, query=None, brand=None, tags=None):\n pass\n\n kwargs = {}\n\n if logic:\n kwargs['query'] = q\n\n if more_logic:\n kwargs['brand'] = 'brand name'\n\n products = search_products(site, **kwargs)\n\nPartialize example:\n\n.. code:: python\n\n search = search_products.partial(site)\n\n if logic:\n search.query = q\n\n if more_logic:\n search.brand = 'brand name'\n\n products = search()\n\n..\n\n **Note:** function argument names are validated when set, unlike dict string keys.\n", "description_content_type": null, "docs_url": null, "download_url": "https://github.com/5monkeys/partialize/tarball/v0.0.2", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/5monkeys/partialize", "keywords": "partial,functools,args,kwargs,keywords,arguments", "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "partialize", "package_url": "https://pypi.org/project/partialize/", "platform": "any", "project_url": "https://pypi.org/project/partialize/", "project_urls": { "Download": "https://github.com/5monkeys/partialize/tarball/v0.0.2", "Homepage": "https://github.com/5monkeys/partialize" }, "release_url": "https://pypi.org/project/partialize/0.0.3/", "requires_dist": null, "requires_python": null, "summary": "Python partial on steroids", "version": "0.0.3" }, "last_serial": 733455, "releases": { "0.0.3": [ { "comment_text": "", "digests": { "md5": "6646bc997d6f1ddd4d9799f4ba398720", "sha256": "54a9038139987c7d073f6f929225c8ab533590cbeba77df7a3b0f629e03915bc" }, "downloads": -1, "filename": "partialize-0.0.3.tar.gz", "has_sig": false, "md5_digest": "6646bc997d6f1ddd4d9799f4ba398720", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4687, "upload_time": "2013-05-14T11:05:28", "url": "https://files.pythonhosted.org/packages/26/11/2352f88f9c17f3d49a6132afa1fadc2d7e1ea4c441ab0d7d642e26a5adee/partialize-0.0.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "6646bc997d6f1ddd4d9799f4ba398720", "sha256": "54a9038139987c7d073f6f929225c8ab533590cbeba77df7a3b0f629e03915bc" }, "downloads": -1, "filename": "partialize-0.0.3.tar.gz", "has_sig": false, "md5_digest": "6646bc997d6f1ddd4d9799f4ba398720", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4687, "upload_time": "2013-05-14T11:05:28", "url": "https://files.pythonhosted.org/packages/26/11/2352f88f9c17f3d49a6132afa1fadc2d7e1ea4c441ab0d7d642e26a5adee/partialize-0.0.3.tar.gz" } ] }