【发布时间】:2014-12-18 19:29:33
【问题描述】:
我正在尝试完成将字母转换为电话号码序列的代码。我需要做的是例如 JeromeB 到 537-6632。我还需要程序在最后一个可能的数字之后切断字母翻译。因此,例如在 1-800-JeromeB 之后,即使我写在 1-800-JeromeBrigham 中,它也不会编码。问题是,虽然我不明白如何将其包含在我的代码中。我不知道把最后一个字母剪掉放在破折号里。我目前拥有的是这个
alph = ['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']
num =[2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,7,7,8,8,8,9,9,9,9]
phone = raw_input('enter phone number ').lower()
s = ""
for index in range(len(phone)):
if phone[index].isalpha():
s = s + str(num[alph.index(phone[index])])
else:
s = s + phone[index]
print s
【问题讨论】:
-
尝试使用字典。我太困了,无法测试我的答案。但是您可以使用字典轻松完成此操作。但是,当您特别要求输入“xxx-xxx-xxxx”时,为什么要输入“1-800-JeromeBrigham”?
-
你说得对,我也困了哈哈哈。谢谢你
标签: python converter phone-number letter