word = "Example"
# Obtain the first 3 characters of "Example"
# E x a m p l e
# 0 1 2 3 4 5 6
# First 3 characters = "Exa"
sliced_word = word[:3] # Gives you "Exa"
# Everything after character #3 = "mple"
second_sliced_word = word[3:] # Gives you "mple"
a[::-1] # all items in the array, reversed
a[1::-1] # the first two items, reversed
a[:-3:-1] # the last two items, reversed
a[-3::-1] # everything except the last two items, reversed
The basic rules of slice are:
I'''
The slice generates index/integers from - start, start + step, start +
step + step, and so on. All the numbers generated must be less than
the stop value when step is positive.'''
II'''
If step value is missing then by default is taken to be 1 '''
III'''
If start value is missing and step is positive then start value is by default
taken as 0.'''
IV'''
If stop value is missing and step is positive then start value is by
default taken to mean till you reach the ending index(including the
ending index)'''
V'''
A negative step value means the numbers are generated in
backwards order i.e. from - start, then start - step, then start -step
-step and so on. All the numbers generated in negative step must
be greater than the stop value.'''
VI'''
If start value is missing and step is negative then start value takes default
value -1'''
VII'''
If stop value is missing and step is negative then stop value is by
default taken to be till you reach the first element(including the 0
index element)'''
In Python, we perform slicing using the following syntax: [start: end].
fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"]
sliced_fruits = fruits[1:3]
print(sliced_fruits) # ["Orange", "Lemon"]
Slicing in Python is very flexible. If we want to select the first n elements
of a list or the last n elements in a list, we could use the following code:
fruits[:n]
fruits[-n:]
fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"]
print(fruits[:3])
# ["Banana", "Orange", "Lemon"]
print(fruits[-2:])
# ["Apple", "Mango"]
# Accessing tuple elements using slicing
my_tuple = ('p','r','o','g','r','a','m','i','z')
# elements 2nd to 4th
# Output: ('r', 'o', 'g')
print(my_tuple[1:4])
# elements beginning to 2nd
# Output: ('p', 'r')
print(my_tuple[:-7])
# elements 8th to end
# Output: ('i', 'z')
print(my_tuple[7:])
# elements beginning to end
# Output: ('p', 'r', 'o', 'g', 'r', 'a', 'm', 'i', 'z')
print(my_tuple[:])