如何在 python 中的元组元素之间进行除法或乘法?
How to divide or multiply between elements of a tuple in python?
我有下一个元组作为 sql 查询的结果:
tuple1 = [(245, 57)]
tuple2 = [(11249, 5728)]
tuple3 = [(435, 99)]
我需要将 57 除以 245,其余的相同。
我可以通过以下方式访问单个元素:
[x[0] for x in rows]
但当我这样做时:
a = [x[1] for x in rows] / [x[0] for x in rows]
我收到 TypeError: 不支持的操作数类型 /: 'list' 和 'list'
a = [x[1] for x in rows] / [x[0] for x in rows]
将尝试将一个列表除以一个列表。
你的意思是:
a = [x[1] / x[0] for x in rows]
这是对列表中的每个项目划分元素。
使用多个名称可以提高可读性:
a = [y / x for x, y in rows]
另一种选择是
list(map(lambda x: x[1]/x[0] if x[0] else 0,rows))
我有下一个元组作为 sql 查询的结果:
tuple1 = [(245, 57)]
tuple2 = [(11249, 5728)]
tuple3 = [(435, 99)]
我需要将 57 除以 245,其余的相同。
我可以通过以下方式访问单个元素:
[x[0] for x in rows]
但当我这样做时:
a = [x[1] for x in rows] / [x[0] for x in rows]
我收到 TypeError: 不支持的操作数类型 /: 'list' 和 'list'
a = [x[1] for x in rows] / [x[0] for x in rows]
将尝试将一个列表除以一个列表。
你的意思是:
a = [x[1] / x[0] for x in rows]
这是对列表中的每个项目划分元素。
使用多个名称可以提高可读性:
a = [y / x for x, y in rows]
另一种选择是
list(map(lambda x: x[1]/x[0] if x[0] else 0,rows))