Re: calculation on lists

Discussion in 'Python' started by Tim Chase, Dec 19, 2012.

  1. Tim Chase

    Tim Chase Guest

    On 12/19/12 09:24, loïc Lauréote wrote:

    >> is there a tool to calculate on list ?
    >>
    >> something like :
    >>
    >>> a= [1,1,1,1]
    >>> b = [5,9,8,4]
    >>> c = a+b*a
    >>> print c
    >>> [6,10,9,5]

    >>
    >> Thx
    >>
    >> ======
    >>
    >> Hi,
    >> for such simpler cases, you may try list comprehensions and probably
    >> the zip(...) function
    >>
    >>>>> [a+b*a for a,b in zip([1,1,1,1], [5,9,8,4])]

    >> [6, 10, 9, 5]

    > Thank for your answer,
    >
    > I found something allowing to avoid loops. I use operator
    > overloading.


    This is a pretty obvious case of "don't duplicate others' effort".
    With stock python, Vlastimil's list-comprehension using zip() is the
    canonical answer. I'm pretty sure it's far faster than your class,
    in addition to feeling far more pythonic.

    If you happen to have numpy installed, Vlastimil's answer there
    already does what you want, but has the added benefits of

    1) being heavily tested

    2) having core parts written in C for efficiency

    3) having a complete intuitive interface, rather than yours which
    may have issues (such as not having left-vs-right issues:

    a * 5
    5 * a

    should produce the same results)

    4) both the list-comprehension version and the numpy version aren't
    limited to 2-element vectors like your code, but can handle
    N-element vectors.

    -tkc
     
    Tim Chase, Dec 19, 2012
    #1
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. =?UTF-8?B?w4FuZ2VsIEd1dGnDqXJyZXogUm9kcsOtZ3Vleg==

    List of lists of lists of lists...

    =?UTF-8?B?w4FuZ2VsIEd1dGnDqXJyZXogUm9kcsOtZ3Vleg==, May 8, 2006, in forum: Python
    Replies:
    5
    Views:
    410
    =?UTF-8?B?w4FuZ2VsIEd1dGnDqXJyZXogUm9kcsOtZ3Vleg==
    May 15, 2006
  2. loïc Lauréote

    calculation on lists

    loïc Lauréote, Dec 19, 2012, in forum: Python
    Replies:
    0
    Views:
    110
    loïc Lauréote
    Dec 19, 2012
  3. Vlastimil Brom

    Re: calculation on lists

    Vlastimil Brom, Dec 19, 2012, in forum: Python
    Replies:
    0
    Views:
    105
    Vlastimil Brom
    Dec 19, 2012
  4. loïc Lauréote

    calculation on lists

    loïc Lauréote, Dec 19, 2012, in forum: Python
    Replies:
    0
    Views:
    118
    loïc Lauréote
    Dec 19, 2012
  5. Vlastimil Brom

    Re: calculation on lists

    Vlastimil Brom, Dec 19, 2012, in forum: Python
    Replies:
    0
    Views:
    119
    Vlastimil Brom
    Dec 19, 2012
Loading...

Share This Page