【问题标题】:Why can't I use variable like this a=(1,2) [duplicate]为什么我不能使用这样的变量 a=(1,2) [重复]
【发布时间】:2019-04-17 05:43:52
【问题描述】:

假设 a=(1,2) 和 b=(3,4) print(a+b) 应该给出什么?

我期望输出(4,6),但实际输出是(1,2,3,4)

【问题讨论】:

  • 已经回答here
  • 因为这就是 Python 定义 tuples 的加法含义的方式。如果它以您想要的方式运行,那么其他一些人会问为什么 + 不连接。没有让每个人都满意。如果你想做元素相加,你需要自己做,可能用你自己的类。

标签: python


【解决方案1】:

ab 属于 tuple 类型。元组的+ 运算符将元组彼此附加。要实际对元素元组求和,您需要执行以下操作:

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

您可以在这里找到更多信息:https://stackoverflow.com/a/16548756/4949074

【讨论】:

    【解决方案2】:

    因为它是一个元组类型,它是一个sequence type+ 运算符对其进行连接而不是加法。如果您想要数字向量,请查看,例如,NumPy

    【讨论】:

      猜你喜欢
      • 2021-04-20
      • 1970-01-01
      • 2015-09-09
      • 1970-01-01
      • 2013-07-25
      • 1970-01-01
      • 2023-03-27
      • 2020-03-01
      • 1970-01-01
      相关资源
      最近更新 更多