Skip to content

Commit

Permalink
Fix outlet ranges for outlet names with dashes
Browse files Browse the repository at this point in the history
  • Loading branch information
sstallion committed Jul 15, 2022
1 parent 6d6c961 commit a893c61
Showing 1 changed file with 10 additions and 25 deletions.
35 changes: 10 additions & 25 deletions scripts/dlipower
Original file line number Diff line number Diff line change
Expand Up @@ -36,32 +36,17 @@ def _block_to_list(block):
input "1-3,17,19-20"
output=[1,2,3,17,19,20]
"""
block += ','
result = []
val = ''
in_range = False
for letter in block:
if letter in [',', '-']:
if in_range:
val2 = val
val2_len = len(val2)
# result += range(int(val1),int(val2)+1)
for value in outlet_range(int(val1), int(val2) + 1):
result.append(str(value).zfill(val2_len))
val = ''
val1 = None
in_range = False
else:
val1 = val
val1_len = len(val1)
val = ''
if letter == ',':
if val1 != None:
result.append(val1.zfill(val1_len))
else:
in_range = True
else:
val += letter
for elem in block.split(','):
if '-' in elem:
try:
val1, val2 = elem.split('-')
for value in range(int(val1), int(val2)+1):
result.append(str(value))
continue
except ValueError:
pass
result.append(elem)
return result


Expand Down

0 comments on commit a893c61

Please sign in to comment.