# What’s the Double Colon :: Operator in Python?

Problem Formulation: What does the double colon `string[::2]` or `sequence[3::4]` mean in Python?

`>>> string[::2]`

You can observe a similar double colon `::` for sequences:

```>>> lst = [1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> lst[::2]```

Answer: The double colon is a special case in Python’s extended slicing feature. The extended slicing notation `string[start:stop:step]` uses three arguments `start`, `stop`, and `step` to carve out a subsequence. It accesses every `step`-th element between indices `start` (included) and `stop` (excluded). The double colon `::` occurs if you drop the `stop` argument. In this case, Python will use the default value and doesn’t assume an artificial stop.

Here are some examples:

• `string[::2]` reads “default start index, default stop index, step size is two—take every second element”.
• `string[::3]` reads “default start index, default stop index, step size is three—take every third element”.
• `string[::4]` reads “default start index, default stop index, step size is four—take every fourth element.
• `string[2::2]` reads “start index of two, default stop index, step size is two—take every second element starting from index 2.

Let’s have a look at those examples in a Python code shell:

```>>> s = 'hello world'
>>> s[::2]
'hlowrd'
>>> s[::3]
'hlwl'
>>> s[::4]
'hor'
>>> s[2::2]
'lowrd'```

Background: Slicing is a concept to carve out a substring from a given string. Use slicing notation `s[start:stop:step]` to access every `step`-th element starting from index `start` (included) and ending in index `stop` (excluded). All three arguments are optional, so you can skip them to use the default values (`start=0`, `stop=len(lst)`, `step=1`). For example, the expression `s[2:4]` from string `'hello'` carves out the slice `'ll'` and the expression `s[:3:2]` carves out the slice `'hl'`.

You can dive into our full slicing tutorial here:

[Full Tutorial] Introduction to Slicing

Also, it may help to watch my introductory video on slicing:

To boost your Python skills, check out my free cheat sheets and code tutorials sent to you via email: