Python Challenges: Encode a string amount into integer
Write a Python program that takes a string and encode it that the amount of symbols would be represented by integer and the symbol.
For example, the string "AAAABBBCCDAAA" would be encoded as "4A3B2C1D3A"
Sample Solution:
Python Code:
def encode_string(str1):
encoded = ""
ctr = 1
last_char = str1[0]
for i in range(1, len(str1)):
if last_char == str1[i]:
ctr += 1
else:
encoded += str(ctr) + last_char
ctr = 0
last_char = str1[i]
ctr += 1
encoded += str(ctr) + last_char
return encoded
print(encode_string("AAAABBBCCDAAA"))
print(encode_string("PHP"))
print(encode_string("AAAABBBCCCDAABDAAAAC"))
Sample Output:
4A3B2C1D3A 1P1H1P 4A3B3C1D2A1B1D4A1C
Flowchart:
Python Code Editor:
Contribute your code and comments through Disqus.
Previous: Write a Python program to find the index of the first term in the Fibonacci sequence to contain 500 digits.
Next: Write a Python program that takes a string of numbers and letters and return string which consists of letters.
What is the difficulty level of this exercise?
Test your Programming skills with w3resource's quiz.
- Weekly Trends and Language Statistics
- Weekly Trends and Language Statistics