﻿ Python: Find the shortest distance from a specified character in a given string - w3resource

# Python: Find the shortest distance from a specified character in a given string

## Python Itertools: Exercise-23 with Solution

Write a Python program to find the shortest distance from a specified character in a given string. Return the shortest distances through a list and use an itertools component to solve the problem.

Sample Solution:

Python Code:

``````import itertools as it

def char_shortest_distancer(str1, char1):
result = [len(str1)] * len(str1)
prev_char = -len(str1)
for i in it.chain(range(len(str1)),reversed(range(len(str1)))):
if str1[i] == char1:
prev_char = i
result[i] = min(result[i], abs(i-prev_char))
return result

str1 = "w3resource"
chr1='r'
print("Original string:",str1,": Specified character:",chr1)
print(char_shortest_distancer(str1,chr1))

str1 = "python exercises"
chr1='e'
print("\nOriginal string:",str1,": Specified character:",chr1)
print(char_shortest_distancer(str1,chr1))

str1 = "JavaScript"
chr1='S'
print("\nOriginal string:",str1,": Specified character:",chr1)
print(char_shortest_distancer(str1,chr1))
```
```

Sample Output:

```Original string: w3resource : Specified character: r
[2, 1, 0, 1, 2, 2, 1, 0, 1, 2]

Original string: python exercises : Specified character: e
[7, 6, 5, 4, 3, 2, 1, 0, 1, 0, 1, 2, 2, 1, 0, 1]

Original string: JavaScript : Specified character: S
[4, 3, 2, 1, 0, 1, 2, 3, 4, 5]
```

Python Code Editor:

Have another way to solve this solution? Contribute your code (and comments) through Disqus.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.

﻿