我想了解如何在列表中找到连续的数字。这是我迄今为止写的代码:
v = []
while True:
n = int(input("Insert a number (0 for exit) -> "))
if n == 0: break
v.append(n)
for i in range(len(v)):
if v[i] - 1 == v[i - 1]:
print(v[i - 1])
但是这个代码没有打印v[i]的最后一个数字,有人能帮我吗?
我不知道我是否答对了你的问题,但一个简单的解决方案可以是:
first = True
for i in range(1, len(v)):
if v[i]-1 == v[i-1]:
if first:
first = False
print("-")
print(v[i-1])
print(v[i])
else:
first = True
因此,对于像这样的输入
[4, 3, 6, 2, 7, 1, 2, 3, 4, 6, 5, 6, 8, 7]
你得到:
-
1
2
3
4
-
5
6
只需写入:
for i in range(1, len(v)):
if (v[i] - 1) == v[i - 1]:
print(v[i])