Python: Create a new string by taking a string, and word by word rearranging its characters in ASCII order
Python Programming Puzzles: Exercise-69 with Solution
Write a Python program to create a new string by taking a string, and word by word rearranging its characters in ASCII order.
Input: Ascii character table Output: Aciis aaccehrrt abelt Input: maltos won Output: almost now
Pictorial Presentation:

Sample Solution-1:
Python Code:
#License: https://bit.ly/3oLErEI
def test(strs):
return " ".join("".join(sorted(w)) for w in strs.split(' '))
strs = "Ascii character table"
print("Original string:",strs)
print("New string by said string, and word by word rearranging its characters in ASCII order:")
print(test(strs))
strs = "maltos won"
print("\nOriginal string:",strs)
print("New string by said string, and word by word rearranging its characters in ASCII order:")
print(test(strs))
Sample Output:
Original string: Ascii character table New string by said string, and word by word rearranging its characters in ASCII order: Aciis aaccehrrt abelt Original string: maltos won New string by said string, and word by word rearranging its characters in ASCII order: almost now
Flowchart:

Sample Solution-2:
Python Code:
#License: https://bit.ly/3oLErEI
def test(strs):
words = strs.split(' ')
rwords = []
for word in words:
occurrences = {}
for c in word:
occurrences[c] = occurrences.get(c, 0) + 1
subsequence = []
for c, count in occurrences.items():
subsequence += [c]*count
subsequence.sort()
subsequence = subsequence*(len(word)//len(subsequence)) + subsequence[:len(word)%len(subsequence)]
rwords.append(''.join(subsequence))
return ' '.join(rwords)
strs = "Ascii character table"
print("Original string:",strs)
print("New string by said string, and word by word rearranging its characters in ASCII order:")
print(test(strs))
strs = "maltos won"
print("\nOriginal string:",strs)
print("New string by said string, and word by word rearranging its characters in ASCII order:")
print(test(strs))
Sample Output:
Original string: Ascii character table New string by said string, and word by word rearranging its characters in ASCII order: Aciis aaccehrrt abelt Original string: maltos won New string by said string, and word by word rearranging its characters in ASCII order: almost now
Flowchart:

Python Code Editor :
Have another way to solve this solution? Contribute your code (and comments) through Disqus.
Previous: Find all 5's in integers less than n that are divisible by 9 or 15.
Next: Find the first negative balance.
What is the difficulty level of this exercise?
Test your Programming skills with w3resource's quiz.
- Weekly Trends
- Python Interview Questions and Answers: Comprehensive Guide
- Scala Exercises, Practice, Solution
- Kotlin Exercises practice with solution
- MongoDB Exercises, Practice, Solution
- SQL Exercises, Practice, Solution - JOINS
- Java Basic Programming Exercises
- SQL Subqueries
- Adventureworks Database Exercises
- C# Sharp Basic Exercises
- SQL COUNT() with distinct
- JavaScript String Exercises
- JavaScript HTML Form Validation
- Java Collection Exercises
- SQL COUNT() function
- SQL Inner Join