Python 元组比较

Python 元组比较,python,tuples,Python,Tuples,我有一本字典是这样定义的: d = {"date": tuple(date),"open":tuple(open),"close":tuple(close),"min":tuple(min),"max":tuple(max),"MA":tuple(ma)} 这些元组中的每一个都包含一个值列表(每个元组的值数量相同),如何通过特定键的每个值进行迭代,以比较“close”是否优于“MA”?我缺少什么d['close']>d['MA'] 编辑:回复你的评论 […]我想返回的是“close”的一个元素

我有一本字典是这样定义的:

d = {"date": tuple(date),"open":tuple(open),"close":tuple(close),"min":tuple(min),"max":tuple(max),"MA":tuple(ma)}

这些元组中的每一个都包含一个值列表(每个元组的值数量相同),如何通过特定键的每个值进行迭代,以比较“close”是否优于“MA”?

我缺少什么<代码>d['close']>d['MA']

编辑:回复你的评论

[…]我想返回的是“close”的一个元素>与MA的匹配元素的次数。(相同的元组索引)

从:

元组和列表使用对应元素的比较按字典顺序进行比较。这意味着要比较相等,每个元素必须比较相等,并且两个序列必须具有相同的类型和长度

如果不相等,则序列的顺序与其第一个不同的元素相同。例如,cmp([1,2,x],[1,2,y])返回与cmp(x,y)相同的结果。如果对应的元素不存在,则先排序较短的序列(例如,[1,2]<[1,2,3])

正如@TokenMacGuy所说,你可以简单地使用
d['close']>d['MA']
来比较相应的元组。

是的,这是有效的(我的意思是它返回True),但我想返回的是一个“close”元素与匹配的MA元素的对比次数。(相同的元组索引)建议编辑:“每个元组的值数量相同”,而不是“每个元组的值数量相同”。
sum( pair[0] > pair[1] for pair in zip(d['close'], d['MA']) )