Python 基于前四位数字识别手机号码的更好方法
目前,我有一个python程序,用于根据前四位数字识别手机号码Python 基于前四位数字识别手机号码的更好方法,python,Python,目前,我有一个python程序,用于根据前四位数字识别手机号码 cellnum = (input("Enter your 11-digit cellphone number with no spaces or dashes: ")) n1 = cellnum[:4] if n1 == "0917" or n1 == "0916": print(cellnum, "is Globe") elif n1 == "0935": print(cellnum, "is TM") elif n1 =
cellnum = (input("Enter your 11-digit cellphone number with no spaces or dashes: "))
n1 = cellnum[:4]
if n1 == "0917" or n1 == "0916":
print(cellnum, "is Globe")
elif n1 == "0935":
print(cellnum, "is TM")
elif n1 == "0918" or n1 == "0910":
print(cellnum, "is Smart")
elif n1 == "0922" or n1 == "0923":
print(cellnum, "is Sun")
else:
print("~unknown provider~ :(")
有没有更好的方法来改进我的脚本并使其更具动态性。如果你问如何改进它,我给你举了一个简单的例子
这里的问题是什么?你是在问如何改进吗?或者有更好的方法吗?请不要通过提供推测性答案来鼓励低质量或离题的问题。
cellnum = (input("Enter your 11-digit cellphone number with no spaces or dashes: "))
def checkProvider(numb):
provider_key = numb[:4]
providers = [
('Globe', ['0917', '0916']),
('TM', ['0935']),
('Smart', ['0918', '0910']),
('Sun', ['0922', '0923'])
]
for provider in providers:
provider_name, numbers = provider
if provider_key in numbers:
return provider_name
return None
cellProvider = checkProvider(cellnum)
if cellProvider is None:
print('~unknown provider~ :(')
else:
print(cellnum, 'is ' + cellProvider)