【问题标题】:Sum 2 tuple in python在python中求和2个元组
【发布时间】:2015-10-30 14:49:28
【问题描述】:

我有一个看起来像元组列表的 var。

print var

给我看看

(6,)
(3,)

我不太明白它是哪种类型的 var 但我认为这是一种元组,一个双元组?

无论如何,我想要 thi 的总和,在这种情况下是 9

我已经尝试过不同的东西,比如

print(sum(var))

#Or

list = list(var)
print(sum(list))

#Or

for f in var:
    test+=f
print(test)

还有更多... 但我还有

6
3 

或者

[6]
[3]

【问题讨论】:

  • type(var)的结果是什么?
  • 我不太明白它是哪种类型的 var - 请通过 type(var) 验证
  • 这显然是一个双元组老兄
  • 我打赌varstr("(6,)\n(3,)")
  • 那么test+=f 将不起作用,或者至少给出与 6 和 3 不同的结果。如果 test 不是字符串则出错,如果是则返回相同的字符串。

标签: python python-3.x tuples


【解决方案1】:

这是你想要的吗?尝试嵌套 sum 和 list:

sum(list(first_tuple + second_tuple))

【讨论】:

  • 我只有一个 var 包含 2 个元组
  • 那么 var 的类型是什么?
  • print(type(var)) 给我<class 'tuple'><class 'tuple'>
  • 使用这个print(type(var)) 并告诉我们输出
  • @Raccoon var 的来源是什么?我的意思是它的价值来自哪里,你将它分配给 var。
【解决方案2】:

如果你有一个元组,那么你可以使用:

print(sum([pair[0] for pair in var]))

【讨论】:

  • 它给了我这个错误int object is not subscriptable
  • 所以你没有元组的元组。如果你运行 print([pair for pair in var]) 会发生什么?
【解决方案3】:

我终于找到了解决办法

row = cursor.fetchone()

while row is not None:
    var += row[0]
    row = cursor.fetchone() 

cursor.close()
cnx.close()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-03-15
    • 1970-01-01
    • 1970-01-01
    • 2018-09-09
    • 2019-06-01
    • 2010-10-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多