Answer to Question #196729 in Python for Jimmie

Question #196729

Given a string, write a program to print a secret message that replaces characters with numbers 'a' with 1, 'b' with 2, ..., 'z' with 26 where characters are separated by '-'.


Note: You need to replace both uppercase and lowercase characters. You can ignore replacing all characters that are not letters.


a b c d e f g h i j k l m n o p q r s t u v w x y z

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26


Input

Explanation


For example, if the given input is "python", "p" should replaced with "16", similarly"y" with "25","t" with "20","h" with "8","o" with "15","n" with "14". So the output should be "16-25-20-8-15-14".

  • Sample Input 1
python learning
  • Sample output:
16-25-20-8-15-14 12-5-1-18-14-9-14-7
1
Expert's answer
2021-05-21T11:52:35-0400
shift = (
'a', 'b', 'c', 'd', 'e', 'f', 'g',
'h', 'i', 'j', 'k', 'l', 'm', 'n',
'o', 'p', 'q', 'r', 's', 't', 'u',
'v', 'w', 'x', 'y', 'z'
)


def secret_char(s:tuple, message:str):


	secret = []
	message = message.split()
	for el in message:
		tmp = ''
		for char in el:
			if char.lower() in s:
				tmp += str(s.index(char.lower()) + 1)
			else:
				tmp += char
			tmp += '-'
		secret.append(tmp[:-1])
	print(*secret)


while True:
	msg = input()
	secret_char(shift, msg)

Need a fast expert's response?

Submit order

and get a quick answer at the best price

for any assignment or question with DETAILED EXPLANATIONS!

Comments

No comments. Be the first!

Leave a comment

LATEST TUTORIALS
New on Blog
APPROVED BY CLIENTS