• <bdo id='Xxsni'></bdo><ul id='Xxsni'></ul>

    <i id='Xxsni'><tr id='Xxsni'><dt id='Xxsni'><q id='Xxsni'><span id='Xxsni'><b id='Xxsni'><form id='Xxsni'><ins id='Xxsni'></ins><ul id='Xxsni'></ul><sub id='Xxsni'></sub></form><legend id='Xxsni'></legend><bdo id='Xxsni'><pre id='Xxsni'><center id='Xxsni'></center></pre></bdo></b><th id='Xxsni'></th></span></q></dt></tr></i><div id='Xxsni'><tfoot id='Xxsni'></tfoot><dl id='Xxsni'><fieldset id='Xxsni'></fieldset></dl></div>
    <legend id='Xxsni'><style id='Xxsni'><dir id='Xxsni'><q id='Xxsni'></q></dir></style></legend>

    <small id='Xxsni'></small><noframes id='Xxsni'>

    <tfoot id='Xxsni'></tfoot>

      1. 逐元素添加两个元组

        时间:2023-08-31

            • <bdo id='bhjlE'></bdo><ul id='bhjlE'></ul>

                <i id='bhjlE'><tr id='bhjlE'><dt id='bhjlE'><q id='bhjlE'><span id='bhjlE'><b id='bhjlE'><form id='bhjlE'><ins id='bhjlE'></ins><ul id='bhjlE'></ul><sub id='bhjlE'></sub></form><legend id='bhjlE'></legend><bdo id='bhjlE'><pre id='bhjlE'><center id='bhjlE'></center></pre></bdo></b><th id='bhjlE'></th></span></q></dt></tr></i><div id='bhjlE'><tfoot id='bhjlE'></tfoot><dl id='bhjlE'><fieldset id='bhjlE'></fieldset></dl></div>
                  <tbody id='bhjlE'></tbody>

                <legend id='bhjlE'><style id='bhjlE'><dir id='bhjlE'><q id='bhjlE'></q></dir></style></legend>
                • <tfoot id='bhjlE'></tfoot>
                • <small id='bhjlE'></small><noframes id='bhjlE'>

                  本文介绍了逐元素添加两个元组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

                  问题描述

                  我只是想知道是否有一种特别的 Pythonic 方法可以按元素添加两个元组?

                  I was just wondering if there was an especially pythonic way of adding two tuples elementwise?

                  到目前为止(a 和 b 是元组),我有

                  So far (a and b are tuples), I have

                  map(sum, zip(a, b))
                  

                  我的预期输出是:

                  (a[0] + b[0], a[1] + b[1], ...)
                  

                  可能的称重是给 a 0.5 的重量和 b 0.5 的重量,等等.(我正在尝试采用加权平均值).

                  And a possible weighing would be to give a 0.5 weight and b 0.5 weight, or so on. (I'm trying to take a weighted average).

                  这很好用,但是说我想添加权重,我不太确定该怎么做.

                  Which works fine, but say I wanted to add a weighting, I'm not quite sure how I would do that.

                  谢谢

                  推荐答案

                  压缩它们,然后对每个元组求和.

                  Zip them, then sum each tuple.

                  [sum(x) for x in zip(a,b)]
                  

                  这是一个更好但更复杂的版本,它允许加权.

                  EDIT : Here's a better, albeit more complex version that allows for weighting.

                  from itertools import starmap, islice, izip
                  
                  a = [1, 2, 3]
                  b = [3, 4, 5]
                  w = [0.5, 1.5] # weights => a*0.5 + b*1.5
                  
                  products = [m for m in starmap(lambda i,j:i*j, [y for x in zip(a,b) for y in zip(x,w)])]
                  
                  sums = [sum(x) for x in izip(*[islice(products, i, None, 2) for i in range(2)])]
                  
                  print sums # should be [5.0, 7.0, 9.0]
                  

                  这篇关于逐元素添加两个元组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

                  上一篇:如何将自定义类对象转换为 Python 中的元组? 下一篇:Python:生成“元组集";来自“元组列表";不考虑顺序

                  相关文章

                      • <bdo id='VM1Wz'></bdo><ul id='VM1Wz'></ul>
                    1. <legend id='VM1Wz'><style id='VM1Wz'><dir id='VM1Wz'><q id='VM1Wz'></q></dir></style></legend>

                      <tfoot id='VM1Wz'></tfoot>
                    2. <i id='VM1Wz'><tr id='VM1Wz'><dt id='VM1Wz'><q id='VM1Wz'><span id='VM1Wz'><b id='VM1Wz'><form id='VM1Wz'><ins id='VM1Wz'></ins><ul id='VM1Wz'></ul><sub id='VM1Wz'></sub></form><legend id='VM1Wz'></legend><bdo id='VM1Wz'><pre id='VM1Wz'><center id='VM1Wz'></center></pre></bdo></b><th id='VM1Wz'></th></span></q></dt></tr></i><div id='VM1Wz'><tfoot id='VM1Wz'></tfoot><dl id='VM1Wz'><fieldset id='VM1Wz'></fieldset></dl></div>
                    3. <small id='VM1Wz'></small><noframes id='VM1Wz'>