Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- pages_list = set()
- last_num = None
- for p in range(len(pages)):
- if pages[p].isdigit():
- index = p + 1
- while index < len(pages) and pages[index].isdigit():
- index += 1
- if p - 1 < 0 or not pages[p - 1].isdigit():
- last_num = int(pages[p:index])
- pages_list.add(last_num)
- else:
- continue
- elif pages[p] == '-':
- for number in range(last_num, find_next_num(pages, p)):
- last_num = number
- pages_list.add(last_num)
- elif pages[p] == ',':
- continue
- final_list = list(pages_list)
- final_list.sort()
- return final_list
- def find_next_num(pages, p):
- """Helper function."""
- last_num = None
- growing_index = p + 1
- while growing_index < len(pages) and pages[growing_index].isdigit():
- growing_index += 1
- if growing_index == p + 1:
- last_num = int(pages[p + 1])
- elif growing_index > p + 1:
- last_num = int(pages[p + 1:growing_index])
- return last_num
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement