【问题标题】:multiply all elements in a list of tuples for elements in a list将元组列表中的所有元素与列表中的元素相乘
【发布时间】:2021-05-06 22:44:33
【问题描述】:

我知道这听起来很容易,但这个问题让我很苦恼。

我有一个元组列表

[(0,1),(3,4)]

我想将它的所有值乘以列表中的所有值,例如

[ 1, 2, 3]

所以在这种情况下,我会得到一个新的(嵌套的)元组列表:

[[(0,1),(0,2),(0,3)],[(3,4),(6,8),(9,12)]]

我怎样才能得到这个结果?

【问题讨论】:

  • 请从intro tour 重复on topichow to ask。 “告诉我如何解决这个编码问题”不是堆栈溢出问题。我们希望您做出诚实的尝试,然后然后就您的算法或技术提出一个具体的问题。 Stack Overflow 无意取代现有的文档和教程。
  • 另请参阅 homework 上的 Stack Overflow 指南。简单地把你的作业丢在这里是不可接受的,而且很可能违反了你学校的学术诚信政策。

标签: python list tuples


【解决方案1】:

使用列表推导:

tuples = [(0,1),(3,4)]
multipliers = [1, 2, 3]

results = [[(t[0]*m, t[1]*m) for m in multipliers] for t in tuples]

【讨论】:

    【解决方案2】:

    嵌套循环。

    result = []
    for t in tuples:
        for m in multipliers:
            result.append( (t[0]*m, t[1]*m) )
    
    print(result)
    

    给予:

    [(0, 1), (0, 2), (0, 3), (3, 4), (6, 8), (9, 12)]
    

    这是一个元组列表(内部列表)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-04-06
      • 1970-01-01
      • 1970-01-01
      • 2018-04-15
      • 2023-03-19
      • 1970-01-01
      • 2022-01-18
      相关资源
      最近更新 更多