Slicing selects multiple neighboring values from a string or list by placing a starting index and an excluded ending index around a colon. section 4.3.5
Selecting part of a list
With books[1:3], Python returns the values at indexes 1 and 2, not index 3. Omitting an endpoint selects from the beginning or through the end: books[:3] and books[1:]. section 4.3.5
Building and changing words
Slicing can rebuild a string around a new character. In add_letter, word[:i] + c + word[i:] inserts a letter; change_letter uses word[:i] + c + word[i + 1:] to replace one. section 7.7.2 section 7.7.4















