Skip to content
Related Articles

Related Articles

Implementing slicing in __getitem__

Improve Article
Save Article
  • Last Updated : 26 Mar, 2020
Improve Article
Save Article

The __getitem__ method is used for accessing list items, array elements, dictionary entries etc. slice is a constructor in Python that creates slice object to represent set of indices that the range(start, stop, step) specifies. __getitem__ method can be implement in a class, and the behavior of slicing can be defined inside it.


__getitem__(slice(start, stop, step))


  • slice() : constructor to create slice object.
  • start: An integer number specifying start index.It is optional and default is 0.
  • stop: An integer number specifying end index.
  • step: An integer number specifying the step of slicing. It is optional and
    default is 1.

Example 1:

# abcde is string can be 
# an array as well.
sliced ='abcde'.__getitem__(slice(0, 2, 1)) 



The string abcde is sliced with starting index 0 and stop index 2 with step index 1 hence it slices ab from the string and prints the output.

Example 2:

class Demo:
    def __getitem__(self, key):
        # print a[1], a[1, 2], 
        # a[1, 2, 3]
        return key
a = Demo()
# => slice 1
# => slice(1, 2)
a[1, 2]
# => (1, 2, 3)
a[1, 2, 3]


(1, 2) 
(1, 2, 3)

The class demo has the __getitem__ method, slicing is comma-separated. Key prints the sliced object which is passed in class through variable a.

My Personal Notes arrow_drop_up
Related Articles

Start Your Coding Journey Now!