# Iterate over characters of a string in Python

Last Updated : 22 Apr, 2023

In Python, while operating with String, one can do multiple operations on it. Let’s see how to iterate over the characters of a string in Python.

Example #1: Using simple iteration and range()

## Python3

 `# Python program to iterate over characters of a string`   `# Code #1` `string_name ``=` `"geeksforgeeks"`   `# Iterate over the string` `for` `element ``in` `string_name:` `    ``print``(element, end``=``' '``)` `print``("\n")`     `# Code #2` `string_name ``=` `"GEEKS"`   `# Iterate over index` `for` `element ``in` `range``(``0``, ``len``(string_name)):` `    ``print``(string_name[element])`

Output:

```g e e k s f o r g e e k s

G
E
E
K
S```

Code #1

• Time complexity: O(n), where n is the length of the string.
• Auxiliary space: O(1)

Code #2

• Time complexity: O(n), where n is the length of the string.
• Auxiliary space: O(1),

Example #2: Using enumerate() function

## Python3

 `# Python program to iterate over characters of a string`   `string_name ``=` `"Geeks"`   `# Iterate over the string` `for` `i, v ``in` `enumerate``(string_name):` `    ``print``(v)`

Output:

```G
e
e
k
s```

Time complexity: O(n) where n is the length of the string

Auxiliary space: O(1).

Example #3: Iterate characters in reverse order

## Python3

 `# Python program to iterate over characters of a string`   `# Code #1` `string_name ``=` `"GEEKS"`   `# slicing the string in reverse fashion ` `for` `element ``in` `string_name[ : :``-``1``]:` `    ``print``(element, end ``=``' '``)` `print``(``'\n'``)`   `# Code #2` `string_name ``=` `"geeksforgeeks"`   `# Getting length of string` `ran ``=` `len``(string_name)`   `# using reversed() function` `for` `element ``in` `reversed``(``range``(``0``, ran)):` `    ``print``(string_name[element])`

Output:

```S K E E G

s
k
e
e
g
r
o
f
s
k
e
e
g```

Example #4: Iteration over particular set of element. Perform iteration over string_name by passing particular string index values.

## Python3

 `# Python program to iterate over particular set of element.` `string_name ``=` `"geeksforgeeks"`   `# string_name[start:end:step]` `for` `element ``in` `string_name[``0``:``8``:``1``]: ` `    ``print``(element, end ``=``' '``)`

Output:

`g e e k s f o r`

Example #5: Iterate characters using itertools

Alternatively, you can use the islice() function from itertools to iterate over the characters of a string. islice() returns an iterator that returns selected elements from the input iterator, allowing you to specify the start and end indices of the elements you want to iterate over. Here’s an example of how you can use islice() to iterate over the characters of a string:

## Python3

 `import` `itertools`   `string ``=` `"hello"`   `# Create an iterator that returns the characters from index 1 to the end of the string` `char_iter ``=` `itertools.islice(string, ``0``, ``None``)`   `# Iterate over the selected characters` `for` `char ``in` `char_iter:` `    ``print``(char)`   `#This code is contributed by Edula Vinay Kumar Reddy`

Output

```h
e
l
l
o```

Time complexity: O(n)
Auxiliary Space: O(n)

Example #6: Using map() function

Approach:

• Initialize string.
• define a function that will print each character of the string in iteration.
• Using map function on a string.
• Since the map function applied function to each item in iterable in the loop and returns a new iterator that yields transformed on demand.

## Python

 `# Python program to iterate over character` `# of string in python`   `string_name ``=` `"geeks"`   `def` `h(x):` `    ``print``(x)`   `# Using map function` `k ``=` `map``(h, string_name)`   `for` `_ ``in` `k:` `    ``pass`

Output

```g
e
e
k
s
```

Time Complexity: O(N). Here N is the length of the string.
Auxiliary Space: O(1). Since no extra space is required.

Previous
Next