检查数字中的数字是否在python中按递增顺序排列

s32*_*280 14 python algorithm

我正在研究一个问题,该问题确定数字中的数字是否在递增序列中.现在,我采取的解决问题的方法是,例如,考虑数字5678.

为了检查5678是否是一个递增的序列,我取了第一个数字和下一个数字以及最后一个数字,5,6,8并且在范围函数中替换 range(first,last,(diff of first digit and the next to first digit))range(5,8+1,abs(5-6)).结果是升序中的数字列表

对于这个问题,有一个约束说

For incrementing sequences, 0 should come after 9, and not before 1, as in 7890.现在我的程序在输入7890处断开.我不知道如何编码这个逻辑.有谁可以帮助我吗?.

增加序列的代码是

  len(set(['5','6','7','8']) - set(map(str,range(5,8+1,abs(5-6))))) == 0 
Run Code Online (Sandbox Code Playgroud)

blh*_*ing 21

您可以简单地检查转换为字符串时的数字是否为以下子字符串'1234567890':

str(num) in '1234567890'
Run Code Online (Sandbox Code Playgroud)

  • @JörgWMittag不,OP说"0应该在9*之后,而不是在1*之前",所以901不是一个有效的增加序列,因为0不应该在1之前. (5认同)
  • 简单而完美的答案.做得好. (2认同)