DEV Community

Avnish
Avnish

Posted on

What Does :: Mean in Python

Title : What Does :: Mean in Python

In Python, the :: operator is used in slicing. It's generally used with lists, tuples, strings, and other sequence types to specify a range of elements to extract from the sequence. The syntax is [start:stop:step]. Here's what each part of the syntax means:

  • start: The index from which the slice starts (inclusive). If omitted, it defaults to the beginning of the sequence.
  • stop: The index where the slice ends (exclusive). If omitted, it defaults to the end of the sequence.
  • step: The increment between indices. If omitted, it defaults to 1.

Now, let's look at some examples to understand how :: works:

Example 1:

my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
print(my_list[::2])
Enter fullscreen mode Exit fullscreen mode

Explanation:

  • my_list[::2]: This means we want to extract elements from my_list starting from the beginning and ending at the end (since start and stop are not specified), with a step of 2.
  • So, it will extract every second element from the list.
  • Output: [1, 3, 5, 7, 9]

Example 2:

my_string = "Hello, World!"
print(my_string[1::2])
Enter fullscreen mode Exit fullscreen mode

Explanation:

  • my_string[1::2]: This means we want to extract characters from my_string starting from index 1 (which is 'e') to the end, with a step of 2.
  • So, it will extract every second character from the string, starting from 'e'.
  • Output: 'el,Wrd'

Example 3:

my_tuple = (1, 2, 3, 4, 5)
print(my_tuple[::-1])
Enter fullscreen mode Exit fullscreen mode

Explanation:

  • my_tuple[::-1]: This means we want to extract elements from my_tuple starting from the end (since neither start nor stop is specified) and ending at the beginning (exclusive), with a step of -1 (indicating reverse order).
  • So, it will reverse the tuple.
  • Output: (5, 4, 3, 2, 1)

Example 4:

my_list = [1, 2, 3, 4, 5]
print(my_list[2:0:-1])
Enter fullscreen mode Exit fullscreen mode

Explanation:

  • my_list[2:0:-1]: This means we want to extract elements from my_list starting from index 2 (inclusive) to index 0 (exclusive), with a step of -1.
  • So, it will extract elements from index 2 to index 1 in reverse order.
  • Output: [3, 2]

Example 5:

my_string = "abcdefg"
print(my_string[:3])
Enter fullscreen mode Exit fullscreen mode

Explanation:

  • my_string[:3]: This means we want to extract characters from my_string starting from the beginning (since start is not specified) to index 3 (exclusive).
  • So, it will extract characters from index 0 to index 2.
  • Output: 'abc'

These examples demonstrate the usage of the :: operator in Python for slicing sequences.

Top comments (0)