Advertisement
Guest User

Untitled

a guest
Dec 14th, 2019
151
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.09 KB | None | 0 0
  1. pages_list = set()
  2. last_num = None
  3. for p in range(len(pages)):
  4. if pages[p].isdigit():
  5. index = p + 1
  6. while index < len(pages) and pages[index].isdigit():
  7. index += 1
  8. if p - 1 < 0 or not pages[p - 1].isdigit():
  9. last_num = int(pages[p:index])
  10. pages_list.add(last_num)
  11. else:
  12. continue
  13. elif pages[p] == '-':
  14. for number in range(last_num, find_next_num(pages, p)):
  15. last_num = number
  16. pages_list.add(last_num)
  17. elif pages[p] == ',':
  18. continue
  19. final_list = list(pages_list)
  20. final_list.sort()
  21. return final_list
  22.  
  23.  
  24. def find_next_num(pages, p):
  25. """Helper function."""
  26. last_num = None
  27. growing_index = p + 1
  28. while growing_index < len(pages) and pages[growing_index].isdigit():
  29. growing_index += 1
  30. if growing_index == p + 1:
  31. last_num = int(pages[p + 1])
  32. elif growing_index > p + 1:
  33. last_num = int(pages[p + 1:growing_index])
  34. return last_num
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement