Answer to Question #333968 in Python for Kaira

Question #333968

Many companies use telephone numbers like 555-GET-FOOD so the number is easier

for their customers to remember. On a standard telephone, the alphabetic

letters are mapped to numbers in the following fashion:


A, B, C: 2

D, E, F: 3

G, H, I: 4

J, K, L: 5

M, N, O: 6

P, Q, R, S: 7

T, U, V: 8

W, X, Y, Z: 9


Write a program that asks the user to enter a 10-character telephone number in

the format XXX-XXX-XXXX. The application should display the telephone

number with any alphabetic characters that appeared in the original translated

to their numeric equivalent.


1
Expert's answer
2022-04-26T14:49:33-0400
# dict for letter in the phone
phone_letters = {'A': '2', 'B': '2', 'C': '2', 'D': '3', 'E': '3',
                 'F': '3', 'G': '4', 'H': '4', 'I': '4', 'J': '5',
                 'K': '5', 'L': '5', 'M': '6', 'N': '6', 'O': '6',
                 'P': '7', 'Q': '7', 'R': '7', 'S': '7', 'T': '8',
                 'U': '8', 'V': '8', 'W': '9', 'X': '9', 'Y': '9',
                 'Z': '9'}

number = input('Enter a 10-character telephone number in the format XXX-XXX-XXXX:').replace('-', '')
answer = []
for n in number:
    if n.isdigit():
        answer.append(n)
    if n.isalpha():
        value = phone_letters.get(n.upper())
        answer.append(value)

# convert list to desired format
answer.insert(3, '-')
answer.insert(7, '-')

# join list in string
print('Your phone number:', ''.join(answer))

INPUT:

Enter a 10-character telephone number in the format XXX-XXX-XXXX:555-GET-FOOD


OUTPUT:

Your phone number: 555-438-3663


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