[Python-ideas] get() method for list and tuples

Sven R. Kunze srkunze at mail.de
Fri Mar 3 15:33:50 EST 2017


Thanks Chris for your idea.

Right now, I could not think of an example "non-trivial and simple and 
small enough" especially in the context of JSON. But maybe the other 
proponents have.


The part of data series from simulations (so proper datastructures 
available). So, data lists which aren't filled yet or have not filled 
till a certain amount yet I need some special pieces from them like the 
first, a sample, the 300th, etc. This was the case recently.


There was also the case of a refactoring going on in some project, where 
things changed from dicts to lists (upgrade of a third party lib, I 
think). As a consequence, I needed to blow up certain functions from n 
one-liners [a.get] to n four-liners [try/except].


If I had know that this would be relevant to this discussion, I would 
have written it down, but it's just the negative memory/experience.


Regards,
Sven


On 03.03.2017 21:16, Chris Barker wrote:
> About JSON and schema-less data:
>
> I need to deal with this fairly often as well, but:
>
> JSON has a data model that includes both mappings and sequences:
>
> Sequences (arrays, lists, etc) are the "right" thing to use when an 
> object has zero or more of something. Usually, these somethings are 
> all the same. So you may need to answer the question: how many 
> somethings are there? but rarely: if there are less than this many 
> somethings, then I should use  a default value.
>
> Mappings (objects, dicts) are the "right" thing to do when an object 
> has a bunch of somethings, and each of them may be different and 
> nameable. In this case, the if this name is in there, use its 
> associated object, otherwise use a default" is a pretty common action.
>
> so if your JSON is well formed (and I agree, being schema-less does 
> not mean it is poorly formed) then it should already be using the 
> appropriate data structures, and you are good to go.
>
> That being said, maybe a concrete example would persuade the skeptics 
> among us -- though I understand it may be hard to find one that is 
> both non-trivial and simple and small enough to post to a mailing list...
>
> -CHB
>
>
>
>
>
>
>
>
> On Fri, Mar 3, 2017 at 12:09 PM, Chris Barker <chris.barker at noaa.gov 
> <mailto:chris.barker at noaa.gov>> wrote:
>
>     On Fri, Mar 3, 2017 at 12:02 PM, Sven R. Kunze <srkunze at mail.de
>     <mailto:srkunze at mail.de>> wrote:
>
>>         For me to think (list/tuple).get() was needed would be if
>>         lots of folk either cast their lists to dicts or made their
>>         own list-dict class to solve that problem.
>
>         The easier solution would be to provide list.get ;-)
>
>
>     Exactly -- I think that was the point -- if there is a lot of
>     custom code out there essentially adding a get() to a list -- then
>     that would indicate that is is broadly useful.
>
>     For my part, I think casting a list to a dict is often the RIGHT
>     way to address these issues.
>
>     -CHB
>
>
>     -- 
>
>     Christopher Barker, Ph.D.
>     Oceanographer
>
>     Emergency Response Division
>     NOAA/NOS/OR&R (206) 526-6959 <tel:%28206%29%20526-6959>   voice
>     7600 Sand Point Way NE (206) 526-6329 <tel:%28206%29%20526-6329>   fax
>     Seattle, WA  98115 (206) 526-6317 <tel:%28206%29%20526-6317>  
>     main reception
>
>     Chris.Barker at noaa.gov <mailto:Chris.Barker at noaa.gov>
>
>
>
>
> -- 
>
> Christopher Barker, Ph.D.
> Oceanographer
>
> Emergency Response Division
> NOAA/NOS/OR&R            (206) 526-6959   voice
> 7600 Sand Point Way NE   (206) 526-6329   fax
> Seattle, WA  98115       (206) 526-6317   main reception
>
> Chris.Barker at noaa.gov <mailto:Chris.Barker at noaa.gov>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-ideas/attachments/20170303/2a34341e/attachment-0001.html>


More information about the Python-ideas mailing list