Sorry, I didn't know that kwargs unpacking in dictionaries displays don't raise a TypeError exception.
On Mon, Apr 9, 2018 at 8:23 AM, Daniel Moisset <dmois...@machinalis.com> wrote: > In which way would this be different to {**mapping1, **mapping2, > **mapping3} ? > > On 8 April 2018 at 22:18, Andrés Delfino <adelf...@gmail.com> wrote: > >> Hi! >> >> I thought that maybe dict could accept several mappings as positional >> arguments, like this: >> >> class Dict4(dict): >>> def __init__(self, *args, **kwargs): >>> if len(args) > 1: >>> if not all([isinstance(arg, dict) for arg in args]): >>> raise TypeError('Dict4 expected instances of dict since >>> multiple positional arguments were passed') >>> >>> temp = args[0].copy() >>> >>> for arg in args[1:]: >>> temp.update(arg) >>> >>> super().__init__(temp, **kwargs) >>> else: >>> super().__init__(*args, **kwargs) >>> >> >> AFAIK, this wouldn't create compatibility problems, since you can't pass >> two positional arguments now anyways. >> >> It would be useful to solve the "sum/union dicts" discussion, for >> example: requests.get(url, params=dict(params, {'foo': bar}) >> >> Whar are your thoughts? >> >> _______________________________________________ >> Python-ideas mailing list >> Python-ideas@python.org >> https://mail.python.org/mailman/listinfo/python-ideas >> Code of Conduct: http://python.org/psf/codeofconduct/ >> >> > > > -- > Daniel F. Moisset - UK Country Manager - Machinalis Limited > www.machinalis.co.uk <http://www.machinalis.com> > Skype: @dmoisset T: + 44 7398 827139 > > 1 Fore St, London, EC2Y 9DT > <https://maps.google.com/?q=1+Fore+St,+London,+EC2Y+9DT&entry=gmail&source=g> > > Machinalis Limited is a company registered in England and Wales. > Registered number: 10574987. >
_______________________________________________ Python-ideas mailing list Python-ideas@python.org https://mail.python.org/mailman/listinfo/python-ideas Code of Conduct: http://python.org/psf/codeofconduct/