Python List slicing (selecting parts of lists)

List slicing (selecting parts of lists) is useful in performing different tasks and getting desired outputs. Learn more about Python List slicing here.

Python List slicing: Using the third “step” argument

lst = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h']
lst[::2]

Output: [‘a’, ‘c’, ‘e’, ‘g’]

lst[::3]

Output: [‘a’, ‘d’, ‘g’]

Section 22.2: Selecting a sublist from a list

lst = ['a', 'b', 'c', 'd', 'e']
lst[2:4]

Output: [‘c’, ‘d’]

lst[2:]

Output: [‘c’, ‘d’, ‘e’]

lst[:4]

Output: [‘a’, ‘b’, ‘c’, ‘d’]

Python List slicing: Reversing a list with slicing

a = [1, 2, 3, 4, 5]
steps through the list backwards (step=-1) b = a[::-1]
built-in list method to reverse 'a' a.reverse()
if a = b:
print(True)
print(b)
Output:
True
[5, 4, 3, 2, 1]

Python List slicing: Shifting a list using slicing

def shift_list(array, s):
"""Shifts the elements of a list to the left or right.
Args:
array - the list to shift
s - the amount to shift the list ('+': right-shift, '-': left-shift)
Returns:
shifted_array - the shifted list

“””

calculate actual shift amount (e.g., 11 --> 1 if length of the array is 5) s %= len(array)
reverse the shift direction to be more intuitive
s *= -1
shift array with list slicing shifted_array = array[s:] + array[:s]
return shifted_array
my_array = [1, 2, 3, 4, 5]

negative numbers

shift_list(my_array, -7)
[3, 4, 5, 1, 2]
no shift on numbers equal to the size of the array shift_list(my_array, 5)
[1, 2, 3, 4, 5]
works on positive numbers
shift_list(my_array, 3)
[3, 4, 5, 1, 2]

Read More

LEAVE A REPLY

Please enter your comment!
Please enter your name here