有一个list44 45 46 47 87 88 89 130 131 132 169 170 171 172 207 208 209 210 239 240 241 242 266 267 268 295 296 297 298 324 325 326 352 353 354 355 379 380 381 417 418 419 459 460 461 497 498 499 534 535
你可以使用循环来遍历列表中的元素,然后判断是否为连续数字。以下是一个实现的示例代码:
lst = [44, 45, 46, 47, 87, 88, 89, 130, 131, 132, 169, 170, 171, 172, 207, 208, 209, 210, 239, 240, 241, 242, 266, 267, 268, 295, 296, 297, 298, 324, 325, 326, 352, 353, 354, 355, 379, 380, 381, 417, 418, 419, 459, 460, 461, 497, 498, 499, 534, 535, 536, 561, 562, 563, 586, 587, 588, 613, 614, 615, 616, 641, 642, 643, 667, 668, 669, 694, 695, 696, 721, 722, 723, 748, 749, 774, 775, 776, 812, 813, 814]
result = []
temp = [lst[0]] # 初始化一个临时列表,用于存放连续的数字
for i in range(1, len(lst)):
if lst[i] == lst[i-1] + 1:
temp.append(lst[i]) # 如果当前数字与前一个数字连续,则将其添加到临时列表中
else:
result.append(temp) # 如果不连续,则将临时列表添加到结果列表中
temp = [lst[i]] # 重新初始化临时列表
result.append(temp) # 最后一个连续数字序列添加到结果列表
# 输出结果
for i, ls in enumerate(result):
print(f"ls_{i+1} = {ls}")
输出结果为:
ls_1 = [44, 45, 46, 47]
ls_2 = [87, 88, 89]
ls_3 = [130, 131, 132]
ls_4 = [169, 170, 171, 172]
ls_5 = [207, 208, 209, 210]
ls_6 = [239, 240, 241, 242]
ls_7 = [266, 267, 268]
ls_8 = [295, 296, 297, 298]
ls_9 = [324, 325, 326]
ls_10 = [352, 353, 354, 355]
ls_11 = [379, 380, 381]
ls_12 = [417, 418, 419]
ls_13 = [459, 460, 461]
ls_14 = [497, 498, 499]
ls_15 = [534, 535, 536]
ls_16 = [561, 562, 563]
ls_17 = [586, 587, 588]
ls_18 = [613, 614, 615, 616]
ls_19 = [641, 642, 643]
ls_20 = [667, 668, 669]
ls_21 = [694, 695, 696]
ls_22 = [721, 722, 723]
ls_23 = [748, 749]
ls_24 = [774, 775, 776]
ls_25 = [812, 813, 814]
``
原文地址: https://www.cveoy.top/t/topic/iqQU 著作权归作者所有。请勿转载和采集!