我正在研究一个问题,该问题确定数字中的数字是否在递增序列中.现在,我采取的解决问题的方法是,例如,考虑数字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)
归档时间: |
|
查看次数: |
1468 次 |
最近记录: |