Slicing generates a new string; therefore, slices can be set to a variable
The slice will start and include the value at starting_index
The slice will end at ending_index, but not include the value at the ending_index
The ending_index can be a value greater than the largest index possible
If the step_value is not specified, it is set to: 1
If the slicing values are set to an impossible outcome, it will return an empty string: ''
# Example'''Looking at: 'Hello!' | H | e | l | l | o | ! | 0 1 2 3 4 5 6 | H | e | l | l | o | ! -6 -5 -4 -3 -2 -1'''word ='Hello!'print('word:', word)print('----------------------')print('word[0:6]:', word[0:6])print('word[0:5]:', word[0:5])print('----------------------')print('word[1:4]:', word[1:4])print('word[:3]:', word[:3])print('word[2:]:', word[2:])print('word[:]:', word[:])print('----------------------')print('word[0:6:2]:', word[0:6:2])print('word[::2]:', word[::2])print('word[1:4:3]:', word[1:4:3])print('word[::-1]:', word[::-1])print('word[-5:-2]:', word[-5:-2])print('word[6:0:-1]:', word[-5:-2])print('word[-1:-6:-1]:', word[-1:-6:-1])print('----------------------')print('Some impossible slices and their results:')print('word[6:0]:', word[6:0], '<< en empty string has been outputted.')print('word[:20]:', word[:20], '<< There are no characters beyond the index of 6')print('word[1:4:-1]', word[1:4:-1], '<< en empty string has been outputted.')
word: Hello!
----------------------
word[0:6]: Hello!
word[0:5]: Hello
----------------------
word[1:4]: ell
word[:3]: Hel
word[2:]: llo!
word[:]: Hello!
----------------------
word[0:6:2]: Hlo
word[::2]: Hlo
word[1:4:3]: e
word[::-1]: !olleH
word[-5:-2]: ell
word[6:0:-1]: ell
word[-1:-6:-1]: !olle
----------------------
Some impossible slices and their results:
word[6:0]: << en empty string has been outputted.
word[:20]: Hello! << There are no characters beyond the index of 6
word[1:4:-1] << en empty string has been outputted.
Example: Iterate through a string backwards
# Example# Looking at a string backwards through for loopword ='Hello World!'for character in word[::-1]:print('Current Character:', character)
Current Character: !
Current Character: d
Current Character: l
Current Character: r
Current Character: o
Current Character: W
Current Character:
Current Character: o
Current Character: l
Current Character: l
Current Character: e
Current Character: H