如何检查列表中的数字是否大于其前面的数字-python

如何检查列表中的数字是否大于其前面的数字-python,python,Python,我有3组数据压缩在一起日期,数字,价格。我想遍历这个表,每当列表中的somenumber小于它前面的somenumber时,我想提取发生这种情况的日期、somenumber和价格。目前我只有: for a,b,c in zip(date,somenumber,price): print(a,b,c) 它会打印出如下内容: 当somenumber从808739变为462541时,我想返回该较低数字的数据: 2018-02-07 14:42:00 462541 7.33 谢谢 这将比较so

我有3组数据压缩在一起日期,数字,价格。我想遍历这个表,每当列表中的somenumber小于它前面的somenumber时,我想提取发生这种情况的日期、somenumber和价格。目前我只有:

for a,b,c in zip(date,somenumber,price):
    print(a,b,c)
它会打印出如下内容: 当somenumber从808739变为462541时,我想返回该较低数字的数据: 2018-02-07 14:42:00 462541 7.33


谢谢

这将比较somenumber+1和somenumber,如果somenumber+1序列中的下一个数字小于当前数字,它将打印该行的所有数据。如果不小于,则不会打印任何内容

for a,b,c,d in zip(date, somenumber, somenumber[1:], price):
    if c < b:
        print(a, b, c, d)

我从问题中了解到的是,每一次,somenumber的值在下一行中减小,它应该打印该行。它很容易实现。只需将上一个值存储在另一个变量prev_number中。但是,对于第一行,我们需要将prev_number初始化为可能的最小值。以下是解决方案:

import sys
prev_number = -sys.maxint - 1    #initialize prev_number to lowest possible number in python
for a,b,c in zip(date,somenumber,price):
    if b < prev_number:
        print(a,b,c)
    prev_number = d

让我知道它是否适合您。

323405小于859235。你也要报告吗?如果没有,为什么?python中没有可能的最低整数:n=-sys.maxint**10比您使用的小。它也是不需要的:prev_number=minsomenumber-1就足够了,您可以摆脱import@PatrickArtner这是正确的。但在这里,我们不知道一些数字的最小范围。这就是为什么我们可以使用sys.maxint值。
import sys
prev_number = -sys.maxint - 1    #initialize prev_number to lowest possible number in python
for a,b,c in zip(date,somenumber,price):
    if b < prev_number:
        print(a,b,c)
    prev_number = d