Python 3 code and comments please. Alphabetic Telephone Number Translator progra
ID: 3719022 • Letter: P
Question
Python 3 code and comments please.
Alphabetic Telephone Number Translator program
Many computers use telephone number 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 and C = 2
D,E, and F = 3
G,H, and I = 4
J,K, and L = 5
M, N, and O = 6
P, Q, R, and S = 7
T, U, and V = 8
W, X, Y, and Z = 9
Design a program that asks the user to enter 10 character telephone in the format XXX-XXX-XXXX. The program should display the telephone number with any alphabetic characters that appeared in the original translated to numeric equivalent.
For example, if the user enter 555-GET-FOOD the program should display 555-438-3663.
Explanation / Answer
def description():
print('This program asks users to enter a file name to open and translate'
'alphabetic numbers in it into numeric numbers.')
def get_file():
return input('Enter a file name with its extension: ')
def make_list(object_file):
phone_numbers = object_file.readlines()
index = 0
print('The list has', len(phone_numbers), 'lines')
while index < len(phone_numbers):
phone_numbers[index] = phone_numbers[index].rstrip(' ')
index +=1
print(phone_numbers)
return phone_numbers
def convert(phone_numbers):
index = 0
a = 0
new_object = open('numericnumbers.txt', 'w')
while index < len(phone_numbers):
# print(phone_numbers[index])
number = ''
for i in phone_numbers[index]:
# print(i)
if i == '0':
a = '0'
number += a
elif i == '1':
a = '1'
number += a
elif i == '2' or i == 'A' or i == 'B' or i == 'C':
a = '2'
number += a
elif i == '3' or i == 'D' or i == 'E' or i == 'F':
a = '3'
number += a
elif i == '4' or i == 'G' or i == 'H' or i == 'I':
a = '4'
number += a
elif i == '5' or i == 'J' or i == 'K' or i == 'L':
a = '5'
number += a
elif i == '6' or i == 'M' or i == 'N' or i == 'O':
a = '6'
number += a
elif i == '7' or i == 'P' or i == 'Q' or i == 'R' or i == 'S':
a = '7'
number += a
elif i == '8' or i == 'T' or i == 'U' or i == 'V':
a = '8'
number += a
elif i == '9' or i == 'W' or i == 'X' or i == 'Y' or i == 'Z':
a = '9'
number += a
else:
a = '-'
number += a
print(number)
new_object.write(number)
new_object.write(' ')
index += 1
new_object.close()
def main():
description()
file = get_file()
object_file = open(file, 'r')
phone_numbers = make_list(object_file)
object_file.close()
convert(phone_numbers)
main()
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.