Advertisement
Guest User

Untitled

a guest
Jul 23rd, 2016
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.58 KB | None | 0 0
  1. import string
  2.  
  3. ALPHABET = string.ascii_lowercase
  4. LIST_TO_SORT = """\
  5. gamer
  6. lid
  7. juice
  8. moniter
  9. captain
  10. bonding
  11. loudly
  12. thudding
  13. guitar
  14. shaving
  15. hair
  16. soccer
  17. water
  18. racket
  19. table
  20. late
  21. media
  22. desktop
  23. flipper
  24. club
  25. flying
  26. smooth
  27. monster
  28. purple
  29. guardian
  30. bold
  31. hyperlink
  32. presentation
  33. world
  34. national
  35. comment
  36. element
  37. magic
  38. lion
  39. sand
  40. crust
  41. toast
  42. jam
  43. hunter
  44. forest
  45. foraging
  46. silently
  47. tawesomated
  48. joshing
  49. pong"""
  50.  
  51.  
  52. def turn_string_into_list_of_positions(string_to_transform):
  53. string_lower = string_to_transform.lower()
  54. string_one_as_list_of_positions = []
  55.  
  56. for character in string_lower:
  57.  
  58. if character == ' ':
  59. continue
  60.  
  61. character_position = ALPHABET.index(character)
  62. string_one_as_list_of_positions.append(character_position)
  63.  
  64. return string_one_as_list_of_positions
  65.  
  66.  
  67. def alphabetical_greater_than(string_one, string_two):
  68. string_one_lowered = string_one.lower()
  69. string_two_lowered = string_two.lower()
  70.  
  71. string_one_positions = turn_string_into_list_of_positions(string_one)
  72. string_two_positions = turn_string_into_list_of_positions(string_two)
  73.  
  74. return string_one_positions > string_two_positions
  75.  
  76.  
  77. lines = LIST_TO_SORT.split('\n')
  78.  
  79. for i in range(len(lines)):
  80. current_item = lines[i]
  81. items_before_current_item = i - 1
  82.  
  83. for y in range(items_before_current_item):
  84. item_to_compare_to = lines[y]
  85.  
  86. if alphabetical_greater_than(current_item, item_to_compare_to):
  87. continue
  88. else:
  89. del lines[i]
  90. lines.insert(y, current_item)
  91. break
  92.  
  93. for line in lines:
  94. print(line)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement