Python–提取缺失范围
原文:https://www . geesforgeks . org/python-extract-missing-ranges/
给定元组列表、开始范围和结束范围值,提取列表中缺少的范围。
输入 : test_list = [(7,2),(15,19),(38,50)],strt_val = 5,stop_val = 60 输出 : [(5,7),(2,60),(2,15),(19,60),(19,38),(50,60)] 解释:从 5 开始到 50-60 结束的缺失元素范围根据需要输出。
输入 : test_list = [(7,2),(15,19),(38,50)],strt_val = 1,stop_val = 52 输出 : [(1,7),(2,60),(2,15),(19,60),(19,38),(50,52)] :同上,只是范围有所改动。
*方法:使用循环* 这是可以执行该任务的蛮力方法。在这种情况下,我们跟踪开始和停止值,并不断添加缺失的范围。最后,重要的是检查是否有任何范围小于更高的范围。
# Python3 code to demonstrate working of
# Extract Missing Ranges
# Using loop
# initializing lists
test_list = [(6, 9), (15, 34), (48, 70)]
# printing original list
print("The original list is : " + str(test_list))
# initializing start val
strt_val = 2
# initializing stop val
stop_val = 100
# Using loop
res = []
for sub in test_list:
# checking for start range
if sub[0] > strt_val:
res.append((strt_val, sub[0]))
strt_val = sub[1]
# checking for end range
if strt_val < stop_val:
res.append((strt_val, stop_val))
# printing result
print("Missing range tuples : " + str(res))
**Output :
```py The original list is : [(6, 9), (15, 34), (48, 70)] Missing range tuples : [(2, 6), (9, 100), (9, 15), (34, 100), (34, 48), (70, 100)]
```**
版权属于:月萌API www.moonapi.com,转载请注明出处