string = "something"
slice = string[0:3] # will be "som"
slice = string[0:-3] # will be "someth"
slice = string[3:] # will be "thing"
slice = string[:3] # same as first slice
slice = string[::2] # will be "smtig" -- it goes 2 step each time
# The first number starts counting from '0'
# Always remember that second number in the square bracket says
# "up to but not including"
s = 'Monty Python'
print(s[0:4]) # Output: Mont
print(s[6:7]) # Output: P
print(s[6:20]) # It doesn't give a Traceback eventhough there are no 19 letters
# Output: Python
# If don't demarcate the first or second number it will go till the start or end accordingly
print(s[:2]) # Output: Mo
print(s[8:]) # Output: thon
print(s[:]) # Output: Monty Python
my_string = "Hey, This is a sample text"
print(my_string[2:]) #prints y, This is a sample text
print(my_string[2:7]) #prints y, Th excluding the last index
print(my_string[2::2]) #prints y hsi apetx
print(my_string[::-1]) #reverses the string => txet elpmas a si sihT ,yeH
# To slice a string, use square brackets to index the string.
# Like a range, it includes the first number but doesn't include the second.
string = "I love Grepper"
# The index starts from 0 not 1
s = string[0:3]# Assigns the first three characters of str to s
s2 = string[0:]# Assigns all the characters in a string to s2
s3 = string[:4]# Assigns from 0 up to the 4th character to s3
s4 = string[1:6:2]# Allows you to specify a step as well
arr[start:stop] # items start through stop-1
arr[start:] # items start through the rest of the array
arr[:stop] # items from the beginning through stop-1
arr[:] # a copy of the whole array
arr[start:stop:step] # start through not past stop, by step